如何在Laravel背包中正确设置这些关系

时间:2019-06-25 12:15:13

标签: backpack-for-laravel

我在Laravel / Laravel的背包方面遇到问题。

该程序用于为我父亲的餐厅创建菜单。

我有这些表:

- dishes (Table with the Names of the Dishes)
-- id (auto inc)
-- menuname (Name of the Dish)

- weeklymenues 
-- id (auto inc)
-- start_date (Monday of the selected week)
-- end_date (Friday of the selected week)
-- menu_monday (There should be the id of the dish)
-- menu_tuesday (...)
-- menu_wednesday (...)
.....

我该怎么做呢?

我在CRUD控制器中设置字段:

        $this->crud->addField([
        'label' => "Monday",
        'type' => 'select2',
        'name' => 'menu_mondy', // the db column for the foreign key
        'entity' => 'menu', // the method that defines the relationship in your Model
        'attribute' => 'menuname', // foreign key attribute that is shown to user
        'model' => "App\Models\Menu" // foreign key model
    ]);

在菜单模型中,我设置了这种关系:

public function menu() {
        return $this->belongsTo('\App\Models\Menu');
    }

每次我想保存CRUD时,程序都想在盘表中保存一些东西:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'dish_id' in 'field list' (SQL: update `weeklymenues` set `dish_id` = 1, `weeklymenues`.`updated_at` = 2019-06-25 14:13:14 where `id` = 15)

我在做什么错?如何设置正确的关系?

提前谢谢!

1 个答案:

答案 0 :(得分:-3)

---
-c:\xampp\htdocs\bpwebsite\app\Models\weeklymenues.php
---
protected $fillable = ['start_date', 'end_date', 'menu_monday']
---