首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何通过laravel中的链接将数据值传递给另一个页面?

如何通过laravel中的链接将数据值传递给另一个页面?
EN

Stack Overflow用户
提问于 2019-05-22 04:34:39
回答 1查看 2K关注 0票数 1

我在试着列一个你可以租的地方的清单。但是要租这个地方,你需要填写一些信息。要填写此信息,您需要超出另一页。如何让laravel知道页面属于某个位置?

这就是我现在所做的,但我一直收到错误:

调用未定义的方法App\Reservation::location()

一旦我填好了信息字段

这是链接到创建保留文件的刀片文件

@foreach
($locations as $location => $data)
                            <tr>
                                <th>{{$data->id}}</th>
                                <th>{{$data->name}}</th>
                                <th>{{$data->type}}</th>
                                <th><a class="btn" href="{{route('Reservation.index', $data->id)}}">rent</a></th>
                            </tr>

@endforeach

这是创建预留刀片

<form action="{{ route('location.store') }}" method="post">
                        @csrf
                        <label>title</label>
                        <input type="text" class="form-control" name="name"/>
                        <label>type</label>
                        <select>
                            <option value="0">klein</option>
                            <option value="1">groot</option>
                        </select>
                        <button type="submit" class="btn">inschrijven</button>

                    </form>

这是location控制器的样子

public function store(Request $request)
    {
        $location = new Reservation;
        $location->name = $request->get('name');
        $location->type = $request->get('type');
        $location->location()->associate($request->location());

        $location->save();

        return redirect('/location');
    }

而且我的模型中的关系也应该是有效的

class Reservation extends Model
{
    public function locations()
    {
        return $this->belongsTo('Location::class');
    }
}
class Location extends Model
{
    public function reservations()
    {
        return $this->hasMany('Registration::class');
    }
}

我已经被困在这里一整天了,我真的不知道去哪里找了

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-22 04:38:47

您得到的错误是因为函数名错误,您调用的是location,而它是locations

public function locations(){}

&

$location->location()->associate($request->location());

您可以将变量作为查询参数传递,您需要在刀片文件中将此数据作为数组传递。

Web.php

Route::get('/somewhere/{id?}, function(){
  //do something
})->name('test');

刀片式

route('test', ['id' => $id]);

控制器方法

public function store(Request $request, $id) //Adding the query parameter for id passed in Route.
{
    $location = new Reservation;
    $location->name = $request->get('name');
    $location->type = $request->get('type');
    $location->location()->associate($id);

    $location->save();

    return redirect('/location');
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56245976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档