【发布时间】:2014-09-23 00:50:59
【问题描述】:
我有一个在传递给视图之前在控制器中生成的表单:
public function displayUsers(){
$html = "";
//get all users
$users = $this->entityManager->getRepository('User')->findBy(array(), array('last_name'=>'ASC'));
if($users){
$html .= '<h3>Permissions By User</h3>';
$html .= '<select class="form-control" id="permissions-username">';
foreach($users as $user){
$html .= '<option value="'.$user->getId().'">'.$user->getLastName().', '.$user->getFirstName().'</option>';
}
$html .= '</select>';
}
return View::make('admin')->with('output', $html);
}
然后在“管理员”视图中,我有以下显示表单:
{{ Form::open(array('route'=>'permissions.edit', 'method' => 'GET')) }}
<div class="form-group">
@if($output)
{{ $output }}
@endif
</div>
{{ Form::submit('Edit User', ['class'=>'btn btn-warning btn-sm', 'name' => 'edit_user', 'title'=>'Edit User']) }}
{{ Form::close() }}
当我将此表单提交给控制器时,所选选项的值不会结转。 permissions.edit 函数的输出结果为:
{"edit_user":"Edit User"}
生成的 URL 为:
*(BASE)*/permissions/%7Bpermissions%7D/edit?edit_user=Edit+User
如果我使用刀片模板在视图上创建一个表单,这个问题就解决了。但是,我不想将表单的所有逻辑都放在我的视图中。
【问题讨论】:
标签: laravel-4