gpt4 book ai didi

php - url 值不通过循环改变

转载 作者:可可西里 更新时间:2023-11-01 08:39:47 29 4
gpt4 key购买 nike

我正在尝试显示数据库中用户的评论,并且可以为他们的评论 +1。这是观点。

  <br>Comments:<br>
@foreach($show as $sh)
<span class="comment">{{$sh->comment}} --<b style="color:blue">{{$sh->name}},</b> {{$sh->email}}</span>
<form method="POST" action="{{url("/review/now/add/{$sh->id}")}}">
{!! csrf_field() !!}<input type="submit" value="+1">
Total score: <mark>{{$sh->score}}</mark><br><br>
@endforeach

但是我每次点击 +1 按钮都会被重定向到 /review/now/add/1。我应该 +1 我点击的评论并将其分数存储在数据库中。 commentnamescore为数据库列。

路线:

Route::post('/review/now/add/{id}','reviewcontroller@nowadd');

Controller :

public function nowadd($id)
{
$add=review::where('id',$id)->get();
$count=$add->score;
$now=$count+1;
$nowadd= review::where('id',$id)->update(['score'=>$now]);
return redirect('/review')
->with('message','your have +1 d the comment.' );
}

使用那个 where 子句,我应该在 url 中选择该 id 的行并将 +1 添加到该 id 的分数。但我在这里也失败了。它显示未定义的属性分数。 $add 可能是导致此错误的数组。但怎么可能呢?我只选择具有该 ID 的一行。当我使用 first(); 而不是 get(); 时,一切都很好,但仅针对第一条评论。

最佳答案

get() 方法将返回 Collection类,first() 将返回 Model类是查询中的第一个模型实例

为了更新,您需要使用模型而不是集合。当您尝试访问 Collection 上的 score 属性时,它不会起作用,因为 score 属性位于模型而非集合上

您实际上可以使用集合,并使用 foreach 进行查询,这将在每次迭代时为您提供一个模型

关于php - url 值不通过循环改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37450858/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com