Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 某些路线未找到_Laravel - Fatal编程技术网

Laravel 某些路线未找到

Laravel 某些路线未找到,laravel,Laravel,我在拉雷维尔的一些路线有问题。这是我在web.php文件中的代码: Route::group(['namespace'=>'Admin','middleware'=>['auth:web']],函数(){ 路由::get('/admin/audio/create/{audio?}','AdminAudioController@create')->name('admin.audioCreate'); 路由::get('/admin/article/create/{article?}','Admin

我在拉雷维尔的一些路线有问题。这是我在web.php文件中的代码:

Route::group(['namespace'=>'Admin','middleware'=>['auth:web']],函数(){
路由::get('/admin/audio/create/{audio?}','AdminAudioController@create')->name('admin.audioCreate');
路由::get('/admin/article/create/{article?}','AdminArticleController@create)->name('admin.articleCreate');
}
这是我在刀片上的链接


这是我的控制器: 管理员音频控制器

您有代码

return view('admin.article.create', compact('$article'));
但需要

return view('admin.article.create', compact('article'));

我可以看出你们在侧面契约中提到了$article

请您检查一下,我认为create方法应该是这样的:

public function create(Article $article = null)
{
    return view('admin.article.create', compact('article'));
}

在控制器上调用方法
create(Article$Article=null)
时,Laravel使用该方法解析模型,模型绑定使用您添加到模型中的方法

public function getRouteKeyName()
{
    return 'slug'; // by default it will be $primaryKey which is 'id'
}
简言之,当你给他
articleId

所以要解决它,你几乎没有选择

  • 在URL中使用slug(我推荐的一个)
//blade.php
  • 在URL中使用主articleId
//blade.php
//Article.php.php
公共函数getRouteKeyName()
{
返回“articleId”;
}
  • 使用查询

//blade.php
//Controller.php
公共函数create($article=null)
{
$article=article::where('YOUR_字段',$article)->firstOrFail();
返回视图('admin.article.create',compact('article');
}

我觉得你的代码还可以,也许你有缓存的路由。试着执行:
php artisan route:cache
你的链接中
$article->articleId
的内容是什么?我假设你有一个在你的文章表中找不到的值它的Id记录,当点击链接时它会转到链接“”但不显示我的视图并获取404和courect链接到“”它的工作是正确的,我会假设这篇文章存在于你的表上。
articleId
是一个替换
id
的自定义主键吗?如果是这样的话,可能是你的模型
article
缺少
protected$primaryKey='articleId';
是的,你说得对,我编辑了我的问题,但找不到我的创建方法d如果我把dd(某物)放在创建方法get 404中,我想Routes中有问题。你能给我看表格文章吗?你有哪条记录?你说得对,我编辑了我的问题。这是一个问题错误。这是我的问题
public function getRouteKeyName()
{
    return 'slug'; // by default it will be $primaryKey which is 'id'
}
// blade.php
<a href="{{ route('admin.articleCreate' , ['article' => $article->slug]) }}"><i class="fa fa-edit"></i></a>
// blade.php
<a href="{{ route('admin.articleCreate' , ['article' => $article->articleId]) }}"><i class="fa fa-edit"></i></a>

// Article.php.php
public function getRouteKeyName()
{
    return 'articleId'; 
}

// blade.php
<a href="{{ route('admin.articleCreate' , ['article' => $article->YOUR_FIELD]) }}"><i class="fa fa-edit"></i></a>

//Controller.php
public function create($article = null)
{
    $article = Article::where('YOUR_FIELD', $article)->firstOrFail();
    return view('admin.article.create', compact('article'));
}