Php 如何使用laravel雄辩地只拿一个领域?
我是新来的,我正在看一个视频教程,教Laravel3,不幸的是Laravel4和Laravel3很不一样,我不知道为什么?我担心拉维5号和拉维4号可能会有很大的不同 我将从我的用户表中选择关于一个字段的所有数据:Php 如何使用laravel雄辩地只拿一个领域?,php,laravel,eloquent,Php,Laravel,Eloquent,我是新来的,我正在看一个视频教程,教Laravel3,不幸的是Laravel4和Laravel3很不一样,我不知道为什么?我担心拉维5号和拉维4号可能会有很大的不同 我将从我的用户表中选择关于一个字段的所有数据: $user=new user; $username=$user::find(1)->username; return $username; 上面的代码为true,但只返回用户的用户名,其id等于1,但我想执行以下操作: $user=new user; $
$user=new user;
$username=$user::find(1)->username;
return $username;
上面的代码为true,但只返回用户的用户名,其id等于1,但我想执行以下操作:
$user=new user;
$username=$user::all()->username;
return $username;
此代码有错误$user::all()->username和错误为:
未定义的属性:Illumb\Database\Eloquent\Collection::$username
您可以使用所述的
lists()
功能它将返回一个包含一个属性的所有值的数组 (也不需要创建实例来检索所有用户) 如果希望另一列作为数组的键(例如id),请执行以下操作:
不要担心拉威尔5号。有些事情会改变,但很多事情会保持不变。包括所有关于雄辩和数据库查询的内容(至少据我所知)你能告诉我all()和get()@Kermani
all()之间的区别吗?
只能静态使用get()
没有这样的限制。@Kermani这是一个有点离题的问题。你能发布一个新的问题来询问差异吗?另外,其他用户也会以这种方式更快地找到它。这个方法所做的只是作为get
的静态代理,但是它不需要被调用,因为get
也可以被称为“静态”,也就是说,由于神奇的方法,它被转发到底层的雄辩的\Builder
。@JarekTkaczyk,虽然这是完全正确的,我怀疑OP是否理解。。。(科玛尼无犯罪行为)
$usernames = User::lists('username');
$usernames = User::lists('username', 'id');