【发布时间】:2015-08-11 08:57:36
【问题描述】:
我一直在 Laravel 5.1 中构建一个控制面板,今天刚刚构建了它的用户管理部分。
这似乎是在我使用Form:: 命令时发生的。
我怀疑这是因为登录和注册表单都很好,而且它们来自 Auth Scaffolding,因此这些表单是用 HTML 编写的,而不是使用 Form:: 命令。
但是,我使用Form:: 命令构建的所有表单都只是在页面上将表单代码显示为文本。
例如:
<h1><i class='glyphicon glyphicon-user'></i> Add User</h1>
{{ Form::open(['role' => 'form', 'url' => '/user']) }}
<div class='form-group'>
{{ Form::label('name', 'Name') }}
{{ Form::text('name', null, ['placeholder' => 'Name', 'class' => 'form-control']) }}
</div>
<div class='form-group'>
{{ Form::label('username', 'Username') }}
{{ Form::text('username', null, ['placeholder' => 'Username', 'class' => 'form-control']) }}
</div>
<div class='form-group'>
{{ Form::label('email', 'Email') }}
{{ Form::email('email', null, ['placeholder' => 'Email', 'class' => 'form-control']) }}
</div>
<div class='form-group'>
{{ Form::label('password', 'Password') }}
{{ Form::password('password', ['placeholder' => 'Password', 'class' => 'form-control']) }}
</div>
<div class='form-group'>
{{ Form::label('password_confirmation', 'Confirm Password') }}
{{ Form::password('password_confirmation', ['placeholder' => 'Confirm Password', 'class' => 'form-control']) }}
</div>
<div class='form-group'>
{{ Form::submit('Create', ['class' => 'btn btn-primary']) }}
</div>
{{ Form::close() }}
在页面上以纯文本显示为:
<form method="POST" action="http://localhost/UCP/public/user" accept-charset="UTF-8" role="form"><input name="_token" type="hidden" value="nlVw9OY28DdLUZKOFcrRnlsc79k0LGOGTfURhhFI">
<label for="name">Name</label> <input placeholder="Name" class="form-control" name="name" type="text" id="name">
<label for="username">Username</label> <input placeholder="Username" class="form-control" name="username" type="text" id="username">
<label for="email">Email</label> <input placeholder="Email" class="form-control" name="email" type="email" id="email">
<label for="password">Password</label> <input placeholder="Password" class="form-control" name="password" type="password" value="" id="password">
<label for="password_confirmation">Confirm Password</label> <input placeholder="Confirm Password" class="form-control" name="password_confirmation" type="password" value="" id="password_confirmation">
<input class="btn btn-primary" type="submit" value="Create">
</form>
谁能帮我将这些显示为表单而不是页面上的文本?
【问题讨论】:
-
由于 Laravel 5.0 所有输出默认被转义,即使是由表单助手生成的,所以你必须明确地取消它:
{!! Form::whatever() !!}
标签: php forms laravel laravel-5