Я пытаюсь предоставить список Select
только записями, которые связаны с моделью через сводную таблицу.
При создании программного обеспечения для отслеживания времени / бюджетирования для клиента у меня есть две модели, которые яЯ работаю с бюджетами и проектами, которые объединены с помощью сводной таблицы.(То есть budgets
, projects
и budget_project
)
Я пытаюсь отобразить все проекты, связанные с выбранным Budget
(из ресурса Budget
при вызове действия)на поле Select
.Я не могу понять, как передать model->id
в функцию поля.Затем я буду запускать некоторый код для анализа Projects
, связанного с данным Budget
, и создания группы записей, которые распространяются на диапазон дат и другие отношения.
Пожалуйста, помогите!
Я ищу что-то вроде этого ...
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),
];
}
}