我有两个模型
图像请求
请求类型
1个imagerequest可以有许多requesttype,1个requesttype可以有许多imagerequests。
我在我的模型中这样翻译:
imagerequest模型:
/**
* Get the Request Types for an image request.
*/
public function requestTypes()
{
return $this->hasMany('App\RequestType');
}
请求类型模型:
/**
* Get the Image Requests for a Request Type.
*/
public function imageRequests()
{
return $this->hasMany('App\ImageRequest');
}
我对image\u requests表的迁移:
$table->unsignedInteger('request_type_id')->nullable();
$table->foreign('request_type_id')->references('id')->on('request_types');
在我的表单中,创建新的imagerequest时,我有多个复选框来选择requesttypes,如下所示:
@foreach($requestTypes as $requestType)
{{ Form::checkbox('request_type_id', $requestType->id) }}
{{ Form::label($requestType->type, $requestType->type) }}
<br>
@endforeach
我的服务中有一个函数存储imagerequest,如下所示:
public function storeImageRequest(StoreImageRequestRequest $request)
{
return Auth::user()->imageRequests()->save(new ImageRequest($request->all()));
}
这很好,但它只存储最后选择的“request\u type\u id”。它不能存储所有请求类型id。
如何存储多个请求类型的id?
1条答案
按热度按时间kjthegm61#
你已经建立了一对多的关系,阅读多对多的文档。这包括一个用于存储关系的透视表。
以正确的方式设置透视表和关系后,可以同步imagerequest上的requesttypes。
同时更新html以发布一个包含所有请求类型id的数组。接下来将所有类型与图像同步。