在刀片模板页面中包含帮助程序文件


include helper file in blade template page

我想知道如何包含用于表单验证的助手函数。我是laravel的新手,所以我对它的工作原理只有基本的了解,但我甚至不知道如何包含其中包含函数的文件,我想用这些函数来验证表单以进行错误检查。这是我想在所有表格中使用的内容。如何在具有表单的页面上在全球范围内拥有此页面

helper.php

<?php 
    public function hasError($error) {
    if(strlen($error) > 0) {
        echo "has-error";
    }
}

在这个页面中,我使用hasErrorcreate.blade.php

<div class="form-group <?php hasError($errors->get("keywords")) ?>">
    {{ Form::label('keywords', 'Keywords', array('class' => 'col-sm-2  control-label')) }}
            <div class="col-sm-10">
                {{ Form::text('keywords', NULL, array(
                    'placeHolder' => 'Keywords',
                    'class' => 'form-control'
                )) }}

如何在控制器中处理验证?当你在验证后像这样返回时:

        // Return error
        return Redirect::back()
                        ->withInput()
                        ->withErrors($validator);

你可以显示这样的错误:

<small class="red">{{{ $errors->first('keywords') }}}</small>

你也可以用这个来显示特定的类:

{{ $errors->has('keywords') ? 'has-error' : '' }}

示例:

 <div class="form-group {{ $errors->has('keywords') ? 'has-error' : '' }}">

--

用于创建帮助程序文件,并"全局"访问它们

创建一个名为:libraries->app/libraries 的文件夹

在库中创建一个文件(类):Helper.php

然后将此代码添加到Helper.php:

<?php
class Helper{
public function hasError($error)
{
   if(strlen($error) > 0) 
   {
       echo "has-error";
   }
}

在应用程序的根目录中编辑composer.json,并添加:"app/libraries"

示例(composer.json):

"autoload": {
    "classmap": [
        "app/commands",
        "app/controllers",
        "app/models",
        "app/database/migrations",
        "app/database/seeds",
        "app/tests/TestCase.php",
        "app/libraries"
    ]
},

在您的控制台类型:

composer dump-autoload

现在你可以这样称呼你的"函数":

Helper::hasError($error);