0

这里是迁移。

Schema::create('ruanganjns', function (Blueprint $table) {
            $table->increments('id');
            $table->string('kode_jenis_ruangan');
            $table->string('jenis_ruangan');
            $table->date('tgl_berlaku');
            $table->string('status');
            $table->timestamps();
        });

这里是模型。

protected $table = 'ruanganjns';
    protected $fillable = ['kode_jenis_ruangan','jenis_ruangan','tgl_berlaku','status'];
    public $timestamps = true;
    public function Ruangan()
    {
        return $this->HasMany('App\Ruangan','id_ruangan');
    }

这是控制器编辑代码。

public function edit(Ruanganjns $ruanganjns)
    {
        $ruanganjns = Ruanganjns::findOrFail($ruanganjns->id);
        return view('ruanganjns.edit', compact('ruanganjns'));
    }

这是路线。

这里

主要错误始终来自未找到的 ID。即使我的所有代码都是从第一个代码源复制和粘贴的,但第一个源代码一切顺利。第三个源代码以此类推。问题的根源始终在第二张表中,即使我更改它的名称或从头开始它总是相同的。我的代码是否有拼写错误或区分大小写或有问题?

这是此处网络浏览器中的 结果

4

1 回答 1

1

您正在尝试实现隐式模型绑定,但控制器操作中有一些错误的变量名。它应该与这样的路由占位符匹配

你的路线是这样的

Route::get('admin/ruangjns/{ruangjn}/edit', 'RuanganjnsController@edit');

那么你的控制器动作代码应该是这样的

public function edit(Ruanganjns $ruangjn)  //here $ruangjn should match with route placeholder
{
    return view('ruanganjns.edit', compact('ruangjn'));
}

它会自动获取模型记录,如果没有找到记录,则会返回 404 错误。有关详细信息,请查看上面的链接

于 2018-09-24T04:22:50.867 回答