繁体   English   中英

具有id变量的Laravel重定向路由将不起作用

[英]Laravel redirect route with id variable won't work

我已经为我的laravel 4.2网站提供了更新功能。 它使用正确的信息更新数据库中的表,但是当我想重定向到我来自相同的视图时,我遇到了问题。

网址显示:

HTTP://本地主机:8000 /管理/页/%7BpageID%7D

什么时候说:

HTTP://本地主机:8000 /管理/页/ 1

以下是显示浏览器错误的图片链接:

http://i.imgur.com/ggO5ELg.png

这是我的观点(admin.pages)

@section('content')

    <div class='box box-info'>

        <form method="post" action="/admin/page/{{$page->id}}">
    <div class='box-header'>
            <div class='box-body pad'>
                <input type="text" name="title" value="{{$page->title}}" class="form-control">
            </div>
    </div>
        <div class='box-body pad'>
            <textarea id="editor1" name="text" rows="2" cols="80">
                {{ $page->text }}
            </textarea>
            <br>
            <input type="submit" class="btn btn-primary" value="Opdater">
        </div>
        </form>

    </div>

@stop

这是我的控制器(PageController),我在更新功能中有重定向。

<?php

class PageController extends BaseController {

    public function index($pageID)
    {
        $data['pageID'] = $pageID;
        $page = Page::find($pageID);
        return View::make('admin.pages', $data)
            ->with(compact('page'));
    }

    public function update($pageID)
    {
        DB::table('pages')
            ->where('id', $pageID)
            ->update(array(
                'title' => Input::get('title'),
                'text' => Input::get('text')));

        return Redirect::route('page')->with('succes', 'Du har sendt en besked');
    }

}

这是我在这种情况下使用的两条路线

Route::get('/admin/page/{pageID}', array('as'=>'page', 'uses'=>'PageController@index'));

Route::post('/admin/page/{pageID}', array('as'=>'page', 'uses'=>'PageController@update'));

如果您需要更多信息,请告诉我。

page路由需要一个名为{pageID}的参数,您需要在重定向时传递它:

return Redirect::route('page', ['pageID' => $pageID])->with('succes', 'Du har sendt en besked');

您可以在Laravel重定向文档中阅读有关此内容的更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM