所以,我有三张桌子:农场,庄稼和收成。当我想在我的网页上注册收获时,我使用pluck来显示农场的下拉列表和同一视图中作物的另一个下拉列表。问题是,当我从下拉列表中选择一个农场时,我仍然可以看到并选择与其他农场相关的作物,而且不好。如何仅列出与先前选择的农场相关的作物?我的HarvestController看起来像这样:
public function create()
{
$farms = Farm::where('users_id', Auth::id())->with('alias')->pluck('alias', 'id');
$crops = Crop::where('users_id', Auth::id())->pluck('id', 'id');
return view('harvest.create')
->with('farms', $farms)
->with('crops', $crops);
}
模特中的关系:
class Farm extends Model
{
public function crops(){
return $this->hasMany('App\Crop');
}
}
class Crop extends Model
{
public function farm(){
return $this->belongsTo('App\Farm');
}
public function harvest(){
return $this->hasOne('App\Harvest');
}
}
视图如下:
<div class="form-group">
{!! Form::label('farms_id', 'Farm') !!}
{!! Form::select('farms_id', $farms, null, ['class' => 'form-control', 'required']) !!}
</div>
<div class="form-group">
{!! Form::label('crops_id', 'Crop ID') !!}
{!! Form::select('crops_id', $crops, null, ['class' => 'form-control', 'required']) !!}
</div>
任何帮助都将受到高度赞赏,建设性的烘烤