【发布时间】:2016-12-12 10:46:33
【问题描述】:
我正在尝试创建创建这样的用户的表单,该表单将用于显示数据,也使用表单模型绑定:
{{ Form::open(['url' => 'admin/users/create']) }}
<div class="form-group">
{{ Form::label('first_name', 'First Name : ') }}
{{ Form::text('first_name', null, ['class' => 'form-control']) }}
</div>
<div class="form-group">
{{ Form::label('last_name', 'Last Name : ') }}
{{ Form::text('last_name', null, ['class' => 'form-control']) }}
</div>
{{ Form::close() }}
但是它显示的代码不是实际的视图,所以我在浏览器中看到了这段代码:
<form method="POST" action="http://localhost:8000/admin/users/create" accept-charset="UTF-8">
<input name="_token" type="hidden" value="X5MA46MJctYOYeMtZF1RoQKYmWDtAbsSoxwoOA8Y">
<label for="first_name">First Name : </label>
<input class="form-control" name="first_name" type="text" id="first_name">
<label for="last_name">Last Name : </label>
<input class="form-control" name="last_name" type="text" id="last_name">
</form>
但是当尝试使用 {!! !!} 作为左括号和右括号时,代码可以正常工作并显示实际视图。
我仍然不明白为什么我不能使用laravel-collective 将{{ }} 用作我的支架,如果你看到这个Project 它工作正常。
也有点害怕XSS攻击就像laravel documentation在Displaying Unescaped Data部分说的:
注意:在回显用户提供的内容时要非常小心 您的应用程序。始终使用双花括号语法 转义内容中的任何 HTML 实体。
对此有什么有用的解释吗?谢谢你
注意:我使用的是 Laravel 版本 5.1.40 (LTS)
【问题讨论】:
标签: php laravel-5 laravel-blade laravelcollective