【问题标题】:How to pass params in url to a backpack create form如何将 url 中的参数传递给背包创建表单
【发布时间】:2018-08-02 23:05:56
【问题描述】:

我在 laravel 5.5 安装上使用背包 3.3。 我想用两个 URL 传递的值预填充两个创建表单字段。 假设您创建了一个名为 Image 的基本背包杂物。 一般可以到domain/admin/image/create查看填写表格。

但如果我在 url 中添加一两个参数,我会得到 404。 我想我应该管理路由文件(admin.php) 我试过这样:

Route::group(['prefix' => 'image/{k}/{cid}'], function()
 {
   CRUD::resource('image', 'ImageCrudController');
 });

但仍然得到 404。 有什么建议? 提前致谢。

【问题讨论】:

标签: laravel-backpack


【解决方案1】:

几乎所有字段类型都有default 选项。因此,当您定义它们时,您可以指定一个默认值。您始终可以为该默认值传递一个 GET 参数。所以你可以在你的 EntityCrudController 中有这样的东西:

$this->crud->addField[ // Text
    'name' => 'title',
    'label' => "Title",
    'type' => 'text',
    'default'    => \Request::has('title')?\Request::has('title'):false, // default value
]);

然后您就可以将用户发送到yourapp/admin/entity/create?title=your+default+value 并在字段中显示该默认值。

希望对您有所帮助。干杯!

【讨论】:

  • 嗨,克里斯蒂安。没想到可以这么用。感谢您的帮助(以及整个项目)。
【解决方案2】:

它对我来说更容易

http://127.0.0.1:8000/admin/resultado/create?competencia=2

$this->crud->modifyField("competencia_id",[
              'label' => "Competencia",
              "default"=>$this->crud->request->query->get('competencia'),
              .....

【讨论】:

  • 无法访问受保护的属性 Backpack\CRUD\app\Library\CrudPanel\CrudPanel::$request
猜你喜欢
  • 1970-01-01
  • 2011-06-13
  • 2018-02-26
  • 1970-01-01
  • 2020-03-21
  • 1970-01-01
  • 2012-08-12
  • 2014-12-20
  • 2017-11-18
相关资源
最近更新 更多