保存后进行编辑不会显示所选输入

时间:2019-10-03 12:14:55

标签: php laravel backpack-for-laravel

我正在使用Backpack for Laravel CRUD功能,目前在select字段类型上存在问题,关于保存表单后,一旦我回去尝试编辑它并没有预先定义,我的已选择选项?

这是我的setup()控制器中的Accounts代码:

$this->crud->setModel("App\Models\Accounts");
$this->crud->setRoute("admin/accounts");
$this->crud->setEntityNameStrings('Accounts', 'Account');

$this->crud->addField([
    'label' => "Proxy",
    'type' => 'select',
    'name' => 'proxy_id',
    'entity' => 'proxy',
    'attribute' => 'id',
    'model' => "App\Models\Proxies",
    'nullable' => true
]);

这是我在proxy()模型中的Accounts实体:

public function proxy()
{
    return $this->hasOne(Proxies::class, 'id', 'proxy_id');
}

这是App\Models\Proxies类:

class Proxies extends Model
{

    use CrudTrait;

    public $timestamps = false;

    protected $table = 'proxies';

    protected $fillable = [
        'ip',
        'port',
        'username',
        'password',
        'status'
    ];

    public function getStatusValue()
    {
        switch($this->status) {
            case "0":
                return '<span class="label label-success">Offline</span>';
                break;
            case "1":
                return '<span class="label label-success">Online</span>';
                break;
        }
        return null;
    }

}

这是我的 proxy_id 列的数据库迁移:

public function up()
{
    Schema::table('accounts', function(Blueprint $table)
    {
        $table->integer('proxy_id')->nullable();
    });
}

更新 我已将{!! $field['name'].' - '.old($field['name']).' - '.$connected_entity_entry->getKey() !!}添加到一个新创建的文件中: /resources/views/vendor/backpack/crud/fields/select.blade.php ,我看到的结果是:

proxy_id -  - 1

因此old()函数似乎无法正常工作?

0 个答案:

没有答案