【发布时间】:2019-10-25 09:13:45
【问题描述】:
我正在尝试提供一个 Select 列表,其中仅包含通过数据透视表与模型相关的记录。
在为客户构建时间跟踪器/预算软件时,我正在使用两个模型,称为预算和项目,它们通过数据透视表连接在一起。 (所以budgets、projects 和budget_project)
我正在尝试在Select 字段上显示与选定的Budget(调用操作时来自Budget 资源)相关的所有项目。我不知道如何将model->id 传递给字段函数。然后我将运行一些代码来分析与给定Budget 关联的Projects,并创建一堆跨越日期范围和其他关系的记录。
请帮忙!
我正在寻找这样的东西......
class CreateSchedule extends Action
{
use InteractsWithQueue, Queueable, SerializesModels;
/**
* Perform the action on the given models.
*
* @param \Laravel\Nova\Fields\ActionFields $fields
* @param \Illuminate\Support\Collection $models
* @return mixed
*/
public function handle(ActionFields $fields, Collection $models)
{
return Action::message('all good');
}
/**
* Get the fields available on the action.
*
* @return array
*/
public function fields()
{
$budgetProject = BudgetProject::where('budget_id',$this->id)->get();
foreach($budgetProject as $bp){
$projectArray[$bp->project_id] = $bp->project->name;
}
return [
Select::make('Project','project_id')->options($projectArray),
];
}
}
【问题讨论】:
标签: php laravel crud laravel-nova