是否可以从其他表中获取数据?
在创建表中,我从类型表中获取所有信息,并在下拉列表中显示所有数据
SELECT credits, 0 AS day_winnings, lifetime_winnings FROM 5fa_users WHERE id = ;
在编辑页面中,我也要显示它,但是如何将其显示为创建时选择的类型?
答案 0 :(得分:0)
我认为,您应该将$gData->id
用作每个选项的value
。因为通常您将id
存储为外键而不是标题。
但是对于您自己的问题:您只需添加一个if
语句,即可在foreach
循环中检查当前项是否为选中项。在我的示例中,我假设您有一个变量$movie
,这是您要编辑的条目。
<select name="mov_genre" id="mov_genre" class="form-control input-sm">
<option value="">-- SELECT GENRE --</option>
@foreach(App\Genre::pluck('gen_title', 'id') as $key => $value)
<option value="{{ $key }}" {{ optional($movie)->genre_id === $key ? 'selected' : '' }}>{{ $value }}</option>
@endforeach
</select>
请注意,我将App\Genre::all()
换成App\Genre::pluck('gen_title', 'id')
。这只会加载两个字段gen_title
和id
并将它们放入一个数组,其中id
是键,gen_title
是值。这样做是为了提高性能,因为我们不会加载不必要的数据。
还请注意,当未设置optional($movie)
时,null
将返回$movie
。这样做是为了减少怪异的if
语句,这是常见的做法。