在html我可以使用<span>标签形式标签像这里面:
<label for="name" class="class-name">Name:<span class="required"></span></label>
Run Code Online (Sandbox Code Playgroud)
使用Laravel Blade,标签代码如下:
{!! Form::label('name','Name:',['class'=>'class-name']) !!}
Run Code Online (Sandbox Code Playgroud)
如何<span>使用刀片模板使用内部表单标签?
我是laravel的新手,我正在尝试安装laravelcollective.我只是想以文件在这里,我使用这个从我的项目目录:
composer require "laravelcollective/html":"^5.4.0"
不幸的是,在我按下后立即出现以下错误:
[UnexpectedValueException]无法解析版本约束:5.4.0:无效的版本字符串":5.4.0"
我只是不知道如何解决这个问题.我在google上找不到太多东西,这与我在laravel上缺乏经验相结合,让我陷入困境.
有人可以帮忙吗?
我在 Laravel 5 Blade/Bootstrap 应用程序中使用了laravelcollective/html包,现在我发现不支持 Laravel 8。你能建议一些与 Laravel 8 或这个库兼容的类似的东西吗?
由于 Nova 4 不再有您可以发布的刀片,您如何在搜索栏旁边的头部导航栏中实现最佳定制?我想在那里添加一个下拉菜单,但我不知道从哪里开始或要更改什么?
在 Nova 3 及更早版本中,您必须发布 nova 的资源,然后您可以在layout.blade.php 中添加内容。
我正在尝试在表单中实现复选框和laravel集合,但是我在表单中仅获得单个值,以及如何解决它的任何想法
{!! Form::open(array('action'=>'UserController@updateInfo','method'=>'post')) !!}
Workdays:
<br>
{!! Form::label('monday', 'Monday') !!}
{!! Form::checkbox('workday', 'monday') !!}
<br>
{!! Form::label('tuesday', 'Tuesday') !!}
{!! Form::checkbox('workday', 'tuesday') !!}
<br>
{!! Form::label('wednesday', 'Wednesday') !!}
{!! Form::checkbox('workday', 'wednesday') !!}
<br>
{!! Form::label('thursday', 'Thursday') !!}
{!! Form::checkbox('workday', 'thursday') !!}
<br>
{!! Form::label('friday', 'Friday') !!}
{!! Form::checkbox('workday', 'friday') !!}
<br>
{!! Form::label('saturday', 'Saturday') !!}
{!! Form::checkbox('workday', 'saturday') !!}
<br>
{!! Form::label('sunday', 'Sunday') !!}
{!! Form::checkbox('workday', 'sunday') !!}
<br>
{!! Form::submit('Save', $attributes = ['class'=>'button']) !!}
{!! Form::close() !!}
Run Code Online (Sandbox Code Playgroud)
当我打印请求时,我只会得到单个输出(例如,选定的星期一星期五,在处理请求时我只会得到星期五)
标签也不起作用-关于这个的想法吗?
错误:FormBuilder.php第1208行中的BadMethodCallException:方法hasErrors不存在。
因此,我像往常一样安装了Laravelcollective,并且大多数方面都在工作。
我的composer.json
"laravelcollective/html": "~5.0",
Run Code Online (Sandbox Code Playgroud)
并在我的config / app.php提供程序中
Collective\Html\HtmlServiceProvider::class,
Run Code Online (Sandbox Code Playgroud)
和别名
'Form' => Collective\Html\FormFacade::class,
'Html' => Collective\Html\HtmlFacade::class,
Run Code Online (Sandbox Code Playgroud)
但是,我得到了错误:
FormBuilder.php第1208行中的BadMethodCallException:方法hasErrors不存在。
不太确定这里发生了什么。我在HTML中的错误如下所示。
{{ Form::hasErrors('name') }}
{{ Form::errors('name') }}
Run Code Online (Sandbox Code Playgroud)
我需要为此单独安装一个软件包吗?
我目前正在使用laravelcollective插件渲染和填充laravel 中的表单.这是按预期工作:
{!! Form::model($user, ['action' => 'user@updateUser']) !!}
<div class="form-group">
{!! Form::label('user_name', 'Name') !!}
{!! Form::text('user_name') !!}
</div>
<button class="btn btn-success" type="submit">Update</button>
{!! Form::close() !!}
Run Code Online (Sandbox Code Playgroud)
上面的代码生成表单并使用用户名填充输入字段.
如果我想将一个类属性添加到表单输入,如下所示:
{!! Form::text('user_name', '', ['class' => 'form-control']) !!}
Run Code Online (Sandbox Code Playgroud)
它没有填充输入值,因为理论上我已将默认值(第二个参数)设置为''.
有没有一种方法可以填充值并添加一个类而不显式地这样做:
{!! Form::text('user_name', $user->user_name, ['class' => 'form-control']) !!}
Run Code Online (Sandbox Code Playgroud)
通过这样做上述这违背了通过模型呈现形式的对象{!! Form::model($user, ['action' => 'user@updateUser']) !!},因为我可能也解析$user为一个变量到模板,我不想做的事.
我正在尝试在视图文件中呈现文本输入字段.我一直收到这个错误:在view-file.blade.php中找不到"类'表单'"
模板:
@extends('layouts.app')
@section('content')
<h1>New</h1>
{{ Form::open() }}
{{ Form::text('my-name') }}
{{ Form::close() }}
@endsection
Run Code Online (Sandbox Code Playgroud)
Composer.json
"require": {
"php": ">=7.0.0",
"fideloper/proxy": "~3.3",
"laravel/framework": "5.5.*",
"laravel/tinker": "~1.0",
"laravelcollective/html": "^5.5.0"
},
Run Code Online (Sandbox Code Playgroud)
app.php(配置)
'providers' => [
/*
* Laravel Framework Service Providers...
*/
Illuminate\Auth\AuthServiceProvider::class,
Illuminate\Broadcasting\BroadcastServiceProvider::class,
Illuminate\Bus\BusServiceProvider::class,
Illuminate\Cache\CacheServiceProvider::class,
Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class,
Illuminate\Cookie\CookieServiceProvider::class,
Illuminate\Database\DatabaseServiceProvider::class,
Illuminate\Encryption\EncryptionServiceProvider::class,
Illuminate\Filesystem\FilesystemServiceProvider::class,
Illuminate\Foundation\Providers\FoundationServiceProvider::class,
Illuminate\Hashing\HashServiceProvider::class,
Illuminate\Mail\MailServiceProvider::class,
Illuminate\Notifications\NotificationServiceProvider::class,
Illuminate\Pagination\PaginationServiceProvider::class,
Illuminate\Pipeline\PipelineServiceProvider::class,
Illuminate\Queue\QueueServiceProvider::class,
Illuminate\Redis\RedisServiceProvider::class,
Illuminate\Auth\Passwords\PasswordResetServiceProvider::class,
Illuminate\Session\SessionServiceProvider::class,
Illuminate\Translation\TranslationServiceProvider::class,
Illuminate\Validation\ValidationServiceProvider::class,
Illuminate\View\ViewServiceProvider::class,
/*
* Package Service Providers...
*/
Collective\Html\HtmlServiceProvider::class,
/*
* Application Service Providers...
*/
App\Providers\AppServiceProvider::class,
App\Providers\AuthServiceProvider::class,
// App\Providers\BroadcastServiceProvider::class,
App\Providers\EventServiceProvider::class, …Run Code Online (Sandbox Code Playgroud) 我按照这些步骤但仍未找到"Html"类.
加入 composer.json
"require": {
"laravelcollective/html": "5.2.*"
}
Run Code Online (Sandbox Code Playgroud)
一旦安装,添加这些行 config/app.php
'providers' => [
// ...
Collective\Html\HtmlServiceProvider::class,
// ...
],
'aliases' => [
// ...
'Form' => Collective\Html\FormFacade::class,
'Html' => Collective\Html\HtmlFacade::class,
// ...
],
Run Code Online (Sandbox Code Playgroud)
请参阅随附的屏幕截图.可能是什么原因,我也尝试了,composer dump-autoload composer clear-cache但它没有解决问题
更新
查看示例代码
{!!Html::style('assets/css/bootstrap.min.css')!!}
{!!Html::style('assets/css/custom.css')!!}
{!!Html::script('assets/js/jquery.min.js')!!}
{!!Html::script('assets/js/bootstrap.min.js')!!}
Run Code Online (Sandbox Code Playgroud) 当我们可以使用简单的 html 标签来构建 HTML 元素时,我们真的需要额外的组件吗?
{!! Form::open(['action' => 'Controller@method']) !!}
...
{!! Form::close() !!}
Run Code Online (Sandbox Code Playgroud)
相当于
<form action="{{url('Controller@method')}}">
...
</form>
Form::label('email', 'E-Mail Address', ['class' => 'awesome']);
Run Code Online (Sandbox Code Playgroud)
相当于
<label class='awesome' name='email'> E-Mail Address</label>
Run Code Online (Sandbox Code Playgroud)
ETC...
是否有一些事情是我们无法使用常规 html 标签实现的?如果是这样,可以混合使用吗?(html 标签和 laravelcollective 元素)
laravel ×8
php ×6
laravel-5 ×5
html ×2
checkbox ×1
composer-php ×1
forms ×1
laravel-5.2 ×1
laravel-5.5 ×1
laravel-8 ×1
laravel-9 ×1
laravel-nova ×1