首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel视图中的命名参数

Laravel视图中的命名参数
EN

Stack Overflow用户
提问于 2014-01-12 12:59:00
回答 1查看 2.3K关注 0票数 0

底部的解决方案

我想在刀片模板中生成一个链接到我的控制器操作和传递两个参数。但拉勒维尔总是投

preg_replace():参数不匹配,模式是字符串,替换是数组

routes.php

代码语言:javascript
复制
Route::get('/projects/{project_id}/canals/{canal_id}/damages', array('as' => 'listDamages', 'uses' => 'DamageController@listDamages'));

DamageController.php

代码语言:javascript
复制
public function listDamages($project_id, $canal_id){
        $damages = Canal::find($canal_id)->damages;
        $canal = Canal::find($canal_id);
        $project = Project::find($project_id);
        return View::make('damages.list',array('damages' => $damages, 'canal' => $canal, 'project' => $project));
    }

view.blade.php

代码语言:javascript
复制
/* Values are:
$project->id = 71;
$canal->id = 5103;
*/

{{ Form::open(array('route' => array('listDamages',array('project_id' => $project->id,'canal_id' => $canal->id)), 'method' => 'get', 'class' =>'action-form')) }}
<button type="submit" href="{{ route('listDamages',array('project_id' => $project->id,'canal_id' => $canal->id)) }}" class="small">Auswählen</button>
{{ Form::close() }}

表单中生成的URL应该如下所示:

项目/71/运河/5103/损害赔偿

SOLUTIONEdit工作代码view.blade.php

代码语言:javascript
复制
{{ Form::open(array('route' => array('listDamages', $project->id, $canal->id), 'method' => 'get', 'class' =>'action-form')) }}
<button type="submit" href="{{ route('listDamages',array($project->id, $canal->id)) }}" class="small">Auswählen</button>
{{ Form::close() }}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-12 13:05:19

尝试:

代码语言:javascript
复制
echo Form::open(array('route' => array('listDamages', $project->id, $canal->id)));

不过,还没有测试过上面的内容。无论如何,您始终可以构建url,尽管您失去了命名路由的好处:

代码语言:javascript
复制
echo Form::open(array('url' => 'projects/'.$project->id.'/canals/'.$canal->id.'/damages'));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21074878

复制
相关文章

相似问题

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