【问题标题】:Laravel 8: Array to string conversion on viewLaravel 8:视图上的数组到字符串转换
【发布时间】:2021-02-21 09:08:06
【问题描述】:

更新 #1:

我修正了我的错字:

<form action="{{ route('articles.destroy'  , ['article' => $article->id]) }}" method="post">

但现在我收到此错误消息:

Illuminate\Routing\Exceptions\UrlGenerationException 缺少必需 [Route:articles.edit] [URI: admin/articles/{article}/edit]

这是我的web.php

Route::prefix('admin')->group(function(){
  Route::get('/panel', [PanelController::class, 'index']);
  Route::resource('/articles', ArticleController::class);
});

我有一个包含表单的刀片:

<form action="{{ route('articles.destroy' . ['id' => $article->id]) }}" method="POST">
    {{ method_field('delete') }}
    {{ csrf_field() }}
    <div class="btn-group btn-group-xs">
       <a href="{{ route('$articles.edit' . ['id' => $article->id]) }}" class="btn btn-primary">Edit</a>
       <button type="submit" class="btn btn-danger">حدف</button>
    </div>
</form>

但是当我走到这把刀片上时,它会说:

错误异常 数组到字符串的转换(查看:F:\xampp\htdocs\mywebsite\resources\views\website\backend\articles\index.blade.php)

它指的是这一行:

<form action="{{ route('articles.destroy' . ['id' => $article->id]) }}" method="POST">

我不知道我为什么会收到这个错误,所以如果你知道我为什么会收到这个错误,请告诉我...

提前致谢。

【问题讨论】:

标签: php arrays laravel laravel-8


【解决方案1】:

改变这个:

<form action="{{ route('articles.destroy' . ['id' => $article->id]) }}" method="POST">

到这里:

<form action="{{ route('articles.destroy' , ['id' => $article->id]) }}" method="POST">

【讨论】:

  • 感谢您的回答,但现在我收到了Missing required parameters for [Route: articles.destroy] [URI: admin/articles/{article}]
  • web.php 中的参数名称应与表单中的相同,无论是 id 还是文章都
【解决方案2】:

你有一个错字:

route('articles.destroy' . ['id' => $article->id])

. 用于字符串连接。您希望, 分隔参数:

route('articles.destroy', ['id' => $article->id])

您还需要将路由参数名称与您在数组中传递的键匹配:

route('articles.destroy', ['article' => $article->id])
//          admin/articles/{article}

这假定$article-&gt;id 不返回null

【讨论】:

  • 感谢您的回答,但现在我收到了Missing required parameters for [Route: articles.destroy] [URI: admin/articles/{article}]
  • 我刚刚更新了关于我的路线的问题。我不知道在哪里包括['article' =&gt; $article-&gt;id]。你能帮帮我吗...
  • 它与您已经作为第二个参数传递给route 的数组相同,只需将键从id 更改为article,使其与您尝试替换的路由参数匹配
  • 哎呀,我明白了你的意思,我替换了它,但错误仍然存​​在。我添加了我的更新,请帮助我!
  • 您必须对您正在创建的编辑链接进行相同的更改......这是完全相同的问题
猜你喜欢
  • 2021-07-16
  • 2021-07-16
  • 2016-07-08
  • 1970-01-01
  • 1970-01-01
  • 2020-10-23
  • 2016-09-02
  • 1970-01-01
相关资源
最近更新 更多