[英]OctoberCMS Related Model Dynamic Default Value
I have a backend controller implements Backend\\Behaviors\\RelationController
, I just want to set default values for the related model depending on the parent model values. 我有一个后端控制器实现Backend\\Behaviors\\RelationController
,我只想根据父模型值设置相关模型的默认值。
I have tried the following: model.beforeCreate
, formExtendFields
but no luck. 我尝试了以下方法: model.beforeCreate
, formExtendFields
但没有运气。
Thank you all. 谢谢你们。
After whole day of searching, I found the solution, it is documented no where on OctoberCMS website , I inspected the source file Backend\\Behaviors\\RelationController
, after that I came with the below solution. 经过一整天的搜索,我找到了解决方案,在OctoberCMS网站上没有任何记录 ,我检查了源文件Backend\\Behaviors\\RelationController
,然后提供了以下解决方案。
You should implement relationExtendViewWidget
on your controller, then you can access the model from: $widget->model
, something like below: 您应该在控制器上实现relationExtendViewWidget
,然后可以从$widget->model
访问$widget->model
,如下所示:
class Members extends Controller
{
public $implement = [
'Backend\Behaviors\RelationController',
];
public function relationExtendViewWidget($widget, $field)
{
$member = Member::findOrFail($this->params[0]);
$widget->model->course_id = $member->course_id;
$widget->model->member_id = $member->id;
}
public function relationExtendManageWidget($widget, $field)
{
$member = Member::findOrFail($this->params[0]);
$widget->model->course_id = $member->course_id;
$widget->model->member_id = $member->id;
}
}
I believe this should be documented somewhere on OctoberCMS documentation 我认为这应该记录在OctoberCMS文档中的某个位置
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.