我有一种表单将数据添加到两个不同的表(文章&交易)。一篇文章有很多交易。一笔交易有一篇文章。我无法弄清楚如何使用Deals表中的数据填充编辑表单。我知道我做错了,但目前它只是用长阵列填充编辑表单。我想我需要更改文章控制器和表单值变量。目前,我每个交易日都只有$交易。如何填充编辑表单(一对多关系laravel)
我使用Laravel 5.
在文章表有:ID,标题,图片,说明,地址。 Deals表具有:id,dealname,article_id,dayID。
FORM:
{!! Form::model($article, ['route' => ['articleUpdate_path', $article->id], 'files' => true, 'method' => 'PATCH']) !!}
{!! Form::label('title','TITLE') !!}
{!! Form::text('title', null, ['class' => 'form-control']) !!}
{!! $errors->first('title','<p class="error">:message</p>')!!}
{!! Form::label('image','PHOTO') !!}
{!! Form::file('image', null, ['class' => 'form-control']) !!}
{!! Form::label('description','DESCRIPTION') !!}
{!! Form::textarea('description', null, ['class' => 'form-control']) !!}
{!! Form::label('dealname','Monday') !!}
{!! Form::text('dealname[]', $deals, null, ['class' => 'form-control']) !!}
{!! Form::label('dealname','Tuesday') !!}
{!! Form::text('dealname[]', $deals, null, ['class' => 'form-control']) !!}
{!! Form::label('dealname','Wednesday') !!}
{!! Form::text('dealname[]', $deals,null, ['class' => 'form-control']) !!}
{!! Form::label('address','ADDRESS') !!}
{!! Form::text('address', null, ['class' => 'form-control']) !!}
{!! Form::close() !!}
ARTICLES CONTROLLER
public function edit($id)
{
$article = Article::find($id);
$deals = Deal::lists('dealname');
return view('articles.edit', compact('article', 'deals'));
}
ARTICLE MODEL
class Article extends Model
{
public function deals()
{
return $this->hasMany('App\Deal');
}
protected $fillable = array('title', 'photo', 'description', 'address');
}
DEAL MODEL
class Deal extends Model
{
public function articles()
{
return $this->belongsTo('App\Article')->withTimestamps();
}
protected $fillable = array('dealname', 'article_id', 'dayID');
}
您的控制器方法不会将您的交易作为'$ article = Article :: find($ id) - >与('deals')来获取交易吗?然后在你的视图中,使用'@foreach($ article-> deals为$ deal)'循环它们? – QuickDanger