Laravel 没有查询结果模型 [App\Topic] 创建

Laravel No query results for model [App\Topic] create

我正在尝试获取用户可以创建主题的视图。我在我的项目中做了很多次,但从来没有出现过这个错误,因为所有其他的都工作得很好。

我收到错误 No query results for model [App\Topic] create。这是代码。

这是应该将用户带到视图的 link。

        <div class="col s12">
            <div class="card">
                <div class="card-content clearfix">
                    <a href="{{ route('createtopic', ['theme_id' => $theme->id]) }}" class="waves-effect waves-light btn blue-grey darken-4">New topic <i class="material-icons right">edit</i></a>
                </div>
            </div>
        </div>

这些是在这个问题中使用的路线。

Route::get('/theme/{theme_id}/topics/create', 'TopicsController@create')->name('createtopic');
Route::post('/theme/{theme_id}/topics/create', 'TopicsController@store')->name('savetopic');

控制器方法创建。

dd('Hij is er ' . $id);

并且存储方法是空的,link 不显示 DumpDie 方法而是显示错误。所以没有必要 post 我试图显示的视图,因为那不是问题所在。提前致谢!

您需要了解路由和控制器方法的工作原理

Route::get('/theme/{theme_id}/topics/create', 'TopicsController@create')->name('createtopic');

当你点击上面的路线时,我的意思是你的浏览器中的 yourdomain/theme/1/topics/create ,然后它将用 1 代替 theme_id 并且它将转到create 您的 TopicsController 方法将接受一个参数。

你的创建方法应该是这样的

public function create($id)
{
   dd($id);
}

这里你会得到 1 作为结果,因为你在 url 而不是 theme_id 中传递了这个参数。