我想使用illuminate \ html创建一个如下所示的选择框:
<select>
<option value="$item->id">$item->name</option>
<option value="$item->id">$item->name</option>
</select>
在我的控制器中,我尝试了以下操作:
public function create()
{
$items = Items::all(['id', 'name']);
return view('prices.create', compact('id', 'items'));
}
我认为:
<div class="form-group">
{!! Form::Label('item', 'Item:') !!}
{!! Form::select('item_id', $items, null, ['class' => 'form-control']) !!}
</div>
问题是,不是$item->name
显示实体的所有信息。
Laravel为查询生成器提供带有list()函数
就您而言,您可以替换代码
$items = Items::all(['id', 'name']);
与
$items = Items::lists('name', 'id');
另外,您也可以将其与其他查询生成器链接在一起。
$items = Items::where('active', true)->orderBy('name')->lists('name', 'id');
来源:http :
//laravel.com/docs/5.0/queries#selects
Laravel 5.2的更新
非常感谢@jarry。如您所述,Laravel 5.2的功能应为
$items = Items::pluck('name', 'id');
要么
$items = Items::where('active', true)->orderBy('name')->pluck('name', 'id');
参考:https :
//laravel.com/docs/5.2/upgrade#upgrade-5.2.0-
查看弃用列表
问题内容: 作为HTML表单的一部分,我要创建一个下拉列表,其中将列出数据库中的所有用户名。 我以为以下代码可以解决问题,但下拉列表为空-有人可以帮我解决我做错的事情吗?谢谢。 问题答案: 我的猜测是您有问题,因为在循环之后您没有关闭选择标签。可以做到这一点吗?
数据库中有以下数据。我想通过使用servlet和ajax填充这些数据来填充文本字段。 数据id------------------字符(30) Lat------------------双精度 Long------------------双精度 信息。班 获取数据。班 大众化。班 指数jsp 我基本上是在jsp页面上使用servlet和ajax填充表中的数据库数据,而不刷新页面。我希望采取同样的行
问题内容: 我有一个表映射String-> Integer。 我想用数据库中的值填充该枚举,而不是静态地创建一个枚举。这可能吗 ? 因此,与其静态地解决这个问题,不如: 我想动态创建这个枚举,因为数字{0,1,2,3}基本上是随机的(因为它们是由数据库的AUTOINCREMENT列自动生成的)。 问题答案: 否。枚举始终固定在编译时。您执行此操作的唯一方法是动态生成相关的字节码。 话虽如此,您可能
我目前正在从事一个Laravel项目,我需要将用户注册期间收到的数据内容保存在一个名为users的表中。我能够在表中正确保存其他值,但html选择选项的值除外。 下面是我的html表单: 这里是我的laravel控制器添加所需的值到数据库: 但每次我在数据库中检查signup_type的值时,它总是为null。
问题内容: 对此不熟悉,尝试按照著名的Flask教程使用Flask-bootstrap,Flask-wtforms,Jinja等构建一个应用程序 我有一个带有2个选择字段和一个按钮的表单。 我只希望第一个字段预先填充,而另一个字段根据前一个字段的选定值填充(在客户端?)。 在模板中,我尝试类似 可以正常工作(只要我返回元组列表以使用正确的javascript和路由填充下一个字段),但我想要以下内容
我正在创建一个web应用程序,您必须从数据库中读取对象/实体的列表,并将其填充到JSF