【问题标题】:how to get URL value in laravel?如何在 laravel 中获取 URL 值?
【发布时间】:2020-11-30 23:00:50
【问题描述】:

所以,我尝试了 laravel,但当我想获取 URL 值作为我的数据库的值时,我被卡住了。这是我控制器中的代码。

public function store(Request $request, $shoe_id)
{
    //Insert Data
    $cart = new Cart;
    
    $cart->user_id = Auth::user()->id;
    $cart->shoe_id = $shoe_id;
    $cart->quantity = $request->quan;

    $cart->save();

    return redirect()->back();
}

这是我遇到的问题: it says that the {shoe_id} is string where i wanted to be an integer from the URL

我的网站如下所示: My blade

这是我的 web.php:

Route::get('/','homeController@main')->name('home');
Route::get('/home','homeController@main')->name('home');
Route::get('/detail/{shoe_id}', 'homeController@detail');
Route::get('/cart/{shoe_id}','CartController@show');
Route::post('/cart/{shoe_id}','CartController@store');

这是我的刀片:

@extends('layouts.app')

@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card">
                <div style="text-align:center;">
                    <img src="{{ asset("$cart->shoe_image") }}" alt="" style=" width:350px; height:350px;">
                    <div class="card-header">{{$cart->shoe_name}}</div>
                    <div class="card-header">${{$cart->shoe_price}}</div>
                    <div class="card-header">{{$cart->shoe_description}}</div>
                </div>
                <div class="card-header form-group">
                    <form method="POST" action="/cart/{shoe_id}" enctype="multipart/form-data">
                        @csrf
                        <div class="form-row">
                            <div class="col-md-2">
                                <label for="quantity">Quantity:</label>
                            </div>
                            <div>
                                <input class = "form-control" type="text" id="quantity" name="quan"><br><br>
                            </div>
                            <button class="btn btn-primary" type="submit" name="addcart">Add to Cart</button>
                        </div>
                    </form>
                    
                    {{-- <a class="btn btn-primary" href="#">Add to Cart</a> --}}
                    
                </div>
                
            </div>
        </div>
    </div>
</div>
@endsection

我想要做的:将输入的数据输入数据库。我的数据库有一个名为 cart 的表,其属性为 id、user_id、shoe_id。

【问题讨论】:

  • 请向您展示路由实现以及如何调用 url
  • 在代码块中的路由 (web.php) 文件中使用表单和路由声明发布您的刀片视图 - 请不要附加图片
  • 欢迎来到 SO ... {shoe_id} 应该是什么?

标签: php laravel


【解决方案1】:

在您的表单操作中,您应该提供 shoe_id 的实际值,然后它将按预期工作。 action="/cart/{{ $cart-&gt;shoe_id }}"

@extends('layouts.app')

@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card">
                <div style="text-align:center;">
                    <img src="{{ asset("$cart->shoe_image") }}" alt="" style=" width:350px; height:350px;">
                    <div class="card-header">{{$cart->shoe_name}}</div>
                    <div class="card-header">${{$cart->shoe_price}}</div>
                    <div class="card-header">{{$cart->shoe_description}}</div>
                </div>
                <div class="card-header form-group">
                    <form method="POST" action="/cart/{{ $cart->shoe_id }}" enctype="multipart/form-data">
                        @csrf
                        <div class="form-row">
                            <div class="col-md-2">
                                <label for="quantity">Quantity:</label>
                            </div>
                            <div>
                                <input class = "form-control" type="text" id="quantity" name="quan"><br><br>
                            </div>
                            <button class="btn btn-primary" type="submit" name="addcart">Add to Cart</button>
                        </div>
                    </form>
                    
                    {{-- <a class="btn btn-primary" href="#">Add to Cart</a> --}}
                    
                </div>
                
            </div>
        </div>
    </div>
</div>
@endsection

【讨论】:

  • {$cart-&gt;shoe_id} 将是 {{ $cart-&gt;shoe_id }}
  • @sta 是的,对不起。谢谢指出
  • 仍然出现问题。我的控制器呢?如何获取给定的 {{ $cart->shoe_id }}
  • store方法中dd($shoe_id)的值是多少?它应该获取您从刀片视图传递的值作为路由参数
  • 这是值:“{shoe_id}”
猜你喜欢
  • 2018-07-12
  • 2018-02-15
  • 2020-05-02
  • 2020-04-23
  • 1970-01-01
  • 2014-09-19
  • 2018-02-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多