【问题标题】:Trouble getting $id from session in laravel从 laravel 的会话中获取 $id 时遇到问题
【发布时间】:2018-12-10 04:22:19
【问题描述】:

我正在尝试通过我的 href 将值 $id 传递到下一页

路线:

Route::get('/offer-me/{id}', 'OffersController@create')->name('project.detailed');

来自视图:

<a href="{{ route('project.detailed', [$product->id]) }}"><button class="btn btn-success">View</button></p></a>

当我去 localhost/projectp0/public/offer-me/2 .... 没有$id值?

{"_token":"dSxgM8wTlpNxhDKsqj713KMy656bg8XAU5Q2sqe4","_previous":{"url":"http:\/\/localhost\/projectp0\/public\/auction"},"_flash":{"old":[],"new":[]},"login_web_59ba36addc2b2f9401580f014c7f58ea4e30989d":1}

要获得该视图,我运行:

   $data = session()->all();
   return($data)

【问题讨论】:

  • 您的用例是什么?这可能有助于为您提供适当的解决方案/替代方案。
  • $url = route('routeName', ['id' =&gt; 1]);(注意关联数组与 id 键映射到值)
  • @HCK 我在另一端有一个表格,我想将值存储在 $product->id= $id
  • @drew010 同样的错误。即使我尝试 $data = $request->session()->get('id'); 也没有显示 $id 值并返回它
  • 看起来传递给视图的数据中没有$product。一旦传入,URL route 助手将正确生成 URL。

标签: php html laravel laravel-blade


【解决方案1】:

正如@drew010 在 cmets 中建议你的那样,试试这个方法:

<a href="{{ route('project.detailed', ['id' => $product->id]) }}"><button class="btn btn-success">View</button></p></a>

【讨论】:

    【解决方案2】:

    你可以使用

    public function create($id)
    {
    
    }
    

    创建路由最好使用发布路由 在这种情况下,您应该能够通过请求访问它

    public function create(Request $request)
    {
       $id = $request->id
    }
    

    【讨论】:

      【解决方案3】:

      返回的数据集是您的会话数据。会话数据不存储您从 Get 方法发送的数据。 Get方法用URL发送数据,

      所以 Offer Controller 中的 create 方法应该是这样的.....

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

      然后就可以看到$id传过来的值是什么了,

      【讨论】:

        【解决方案4】:

        {id} 参数存在于请求中,而不是会话中。

        它将以request()-&gt;id 的形式提供。

        【讨论】:

          猜你喜欢
          • 2018-02-13
          • 1970-01-01
          • 2015-04-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-06-14
          • 1970-01-01
          相关资源
          最近更新 更多