包括刀片模板页面中的帮助文件

时间:2014-10-03 21:47:47

标签: php laravel laravel-4

我想知道如何为表单验证添加帮助函数。我是laravel的新手,所以我对它的工作原理只有基本的了解,但我甚至不知道如何包含我想用来验证表单以进行错误检查的文件。这就是我想要在我的所有形式中使用的内容。如何在具有表单

的页面上全局扩展此页面

helper.php

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

并且我在这个页面上使用了hasError create.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'
                )) }}

1 个答案:

答案 0 :(得分:1)

如何在控制器中处理验证?在验证后如下所示返回:

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

您可以显示以下错误:

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

你也可以使用这个show特定类:

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

示例:

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

-

用于创建帮助文件,并“全局”访问它们

创建名为libraries的文件夹 - &gt; 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);