Laravel 背包 - 从过滤器中预选字段
Laravel Backpack - Preselect field from filter
在基于应用的过滤器创建新实体时,是否有任何方法可以预选 select
或其他字段值?
在 Backpack 中添加多条新记录并根据应用于列表的过滤器预填充一些数据库时,我正在努力简化工作,这对我有很大帮助。
本机无法做到这一点,但您可以自定义一些东西来实现这一点:
- 通过在您的
resources/views/vendor/backpack/crud/buttons/create.blade.php
中创建一个文件来覆盖创建按钮,这样您就可以在该按钮上放置一个 ID,比如说... #crud_add_button
;
- 在您的
public/vendor/backpack/crud/js/list.js
中插入一些 javascript,在 DataTable 过滤(或搜索)时它也将所有 GET 参数放在 #create_add_button
上;
- 这样,当您单击添加按钮时,URL 可能看起来像
http://backpackapp.local/admin/monster/create?draft=1,category=23
;这就是用户实际点击的内容;
- 在您的 EntityCrudController 中,有一个
create()
方法可以覆盖 CrudController 中的方法;这个方法可以在每个字段上设置default
个参数,根据GET参数,然后return parent::create()
; [注意:甚至可能不需要此方法,因为我相信 Laravel 合并了 GET、POST 和 OLD 参数,并且 default
已经配置为在参数中获取值;但我不确定];
希望对您有所帮助。
在基于应用的过滤器创建新实体时,是否有任何方法可以预选 select
或其他字段值?
在 Backpack 中添加多条新记录并根据应用于列表的过滤器预填充一些数据库时,我正在努力简化工作,这对我有很大帮助。
本机无法做到这一点,但您可以自定义一些东西来实现这一点:
- 通过在您的
resources/views/vendor/backpack/crud/buttons/create.blade.php
中创建一个文件来覆盖创建按钮,这样您就可以在该按钮上放置一个 ID,比如说...#crud_add_button
; - 在您的
public/vendor/backpack/crud/js/list.js
中插入一些 javascript,在 DataTable 过滤(或搜索)时它也将所有 GET 参数放在#create_add_button
上; - 这样,当您单击添加按钮时,URL 可能看起来像
http://backpackapp.local/admin/monster/create?draft=1,category=23
;这就是用户实际点击的内容; - 在您的 EntityCrudController 中,有一个
create()
方法可以覆盖 CrudController 中的方法;这个方法可以在每个字段上设置default
个参数,根据GET参数,然后return parent::create()
; [注意:甚至可能不需要此方法,因为我相信 Laravel 合并了 GET、POST 和 OLD 参数,并且default
已经配置为在参数中获取值;但我不确定];
希望对您有所帮助。