Php Laravel选择菜单以显示从数据库中选择的内容

Php Laravel选择菜单以显示从数据库中选择的内容,php,mysql,laravel-4,Php,Mysql,Laravel 4,如何获得下拉列表来选择数据库中存在的任何id 我有一个具有location\u id的用户表和一个具有town\u id和town\u name的towns表,因此我希望下拉列表知道用户表location\u id是什么,并根据id显示town\u name 如何在拉维尔做到这一点 提前感谢。您要做的是将您的用户和城镇分配给视图。接下来循环您的towns表以生成选择列表。比如: <select name="location"> @foreach($towns as $town)

如何获得下拉列表来选择数据库中存在的任何id

我有一个具有location\u id的用户表和一个具有town\u id和town\u name的towns表,因此我希望下拉列表知道用户表location\u id是什么,并根据id显示town\u name

如何在拉维尔做到这一点


提前感谢。

您要做的是将您的用户和城镇分配给视图。接下来循环您的towns表以生成选择列表。比如:

<select name="location">
  @foreach($towns as $town)
    <option value="{{ $town->id }}" {{ ($user->location_id == $town_id) ? "selected" : "" }}>{{ $town->town_name }}</option>
  @endforeach
</select>

@foreach($towns作为$town)
位置\u id==$town\u id)?“选定”:“}}>{{$town->town\u name}”
@endforeach

Ok将其修复为与刀片匹配:

    <select name="location" class="form-control">
             @ foreach($towns as $town)
               <option value="{{ $town->town_id}}"  @if ($user->location == $town->town_id) "selected" @else "" @endif>{{ $town->town }}</option>
             @endforeach
           </select>

@foreach($towns作为$town)
地点==$town->town_id)“选择了“@else”“@endif>{{{{$town->town}”
@endforeach

但它不会显示所选项目

如果您正在向视图发送正确的数据,而问题只是重新填充选择项,那么您可以尝试此操作,只需将其放入视图中,并在现在发送时从控制器发送
$towns

{{ Form::select('towns', $towns, Input::old('towns')) }}

无需手动在阵列中循环。Laravel的类将构建选择/下拉列表。

我的上一个答案有效,只是发现它被浏览器中的外观缓存了,所以所有问题都得到了解决。

有人愿意帮助Laravel的新手吗?埃里克,干杯!我会检查出语法错误,在Bah上出现意外的“?”:)不,这是因为我使用的是Blade而不是一个.php文件更新了bladeWhat的示例您从控制器发送了什么?您的表之间是如何相互关联的?这是否只是在重定向回后台时重新填充所选项目?$towns=DB::table('towns')->列表('town','town_id');是我在Controlleries中的什么,但我希望它从db中选择id,以便它显示纽约的生活,而不是列表中的第一个。您的问题不清楚,请尝试重新措辞。两个表是如何构造的?发布他们的字段和关系(如果有)。