2

例如,我需要获取“ id ”值并使用它来搜索我的模型文章,但是这个值(id)也出现在 URL:“/article/ 4 /edit”和“setColumns”中" 参数,我不知道如何获取它。

我需要你的帮助。这是我的示例代码:

文章CrudController.php

public function __construct()
{
    parent::__construct();

    $this->crud->setModel('App\Models\Article');
    $this->crud->setRoute("admin/article");
    $this->crud->setEntityNameStrings('article', 'articles');

    $this->crud->setColumns(['id', 'title', 'text']);

    // WHERE ARE YOU ID?!?!!!
    $article = Article::findOrFail($id);
    $pictures = $article->picture()->first()->name;

    $this->crud->addFields([
        [
            'name' => 'title',
            'label' => 'Title',
            'type' => 'Text'
        ],
        [
            'name' => 'text',
            'label' => 'Text',
            'type' => 'ckeditor'
        ],
        [   // Browse
            'name' => 'image',
            'label' => 'Article immage',
            'type' => 'browse',
            'value' => $pictures //Obviously without id don't work :'(
        ]

    ]);

}
4

2 回答 2

3

您可以尝试覆盖将CrudController::editid 作为第一个参数传递给的方法。

public function edit($id)
{
    $articlePicture = Article::findOrFail($id)->picture()->first()->name;

    $this->crud->addField([
        'name' => 'image',
        'value' => $articlePicture
    ]);

    return parent::edit($id);
}

这可能是一个解决方案,但我不确定这是做你想做的事情的正确方法。

于 2016-10-12T10:45:14.637 回答
1

使用应该使用 getCurrentEntry 来获取 crud 中的当前模型对象

$article_id = $this->crud->getCurrentEntry()->id;
于 2020-11-21T18:42:46.040 回答