标签: laravel-blade

如何将自定义功能传递给Laravel Blade模板?

我有一个自定义功能,我想在刀片模板中传递它.这是功能:

function trim_characters( $text, $length = 45, $append = '…' ) {

    $length = (int) $length;
    $text = trim( strip_tags( $text ) );

    if ( strlen( $text ) > $length ) {
        $text = substr( $text, 0, $length + 1 );
        $words = preg_split( "/[\s]| /", $text, -1, PREG_SPLIT_NO_EMPTY );
        preg_match( "/[\s]| /", $text, $lastchar, 0, $length );
        if ( empty( $lastchar ) )
            array_pop( $words );

        $text = implode( ' ', $words ) . $append;
    }

    return $text;
}
Run Code Online (Sandbox Code Playgroud)

用法是这样的:

$string …
Run Code Online (Sandbox Code Playgroud)

laravel laravel-blade

19
推荐指数
1
解决办法
2万
查看次数

在Laravel中编辑表单时显示旧值的最佳做法是什么?

我正在为编辑表单编写逻辑,并且在输入中显示数据时会有一些复杂性.

当我最初显示表单时,我显示的记录值如下:

value="{{$dog->title}}"
Run Code Online (Sandbox Code Playgroud)

然后当表单没有通过验证时,我需要显示旧的输入,这样用户就不会丢失他已输入的内容.所以我需要有一种方法来显示旧数据,如:

value="{{old('title')}}"
Run Code Online (Sandbox Code Playgroud)

因为我需要输入旧数据以防它存在,我最终得到了这段代码:

value="{{$dog->title or old('title')}}"
Run Code Online (Sandbox Code Playgroud)

在控制器中我检查Request是否有旧输入,我将$ dog var指定为null值.

我想问一下这是否是一种好的做法,还是有更好的"正确"方法呢?

validation laravel laravel-blade

19
推荐指数
3
解决办法
2万
查看次数

检查登录的"警卫"

我有一个multiauth laravel 5.2应用程序,其中定义了config/auth.php以下警告:

...
'admin' => [
    'driver' => 'session',
    'provider' => 'admin',
],
'user' => [
    'driver' => 'session',
    'provider' => 'user',
],
...
Run Code Online (Sandbox Code Playgroud)

所以,adminuser.

问题在于视图层,因为这两个登录保护共享一些视图,例如:

Hello {{Auth::guard('admin')->user()->name}}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,守卫被硬编码到视图中总是admin(当登录后卫时它会给出错误user),但是,为了避免为了这个小改变而必须做另一个相同的视图,我想让它具有动态,例如:

Hello {{Auth::guard(<LOGGEDIN GUARD>)->user()->name}}
Run Code Online (Sandbox Code Playgroud)

PS:我知道这可以通过获取相应的url段来实现,例如:www.site.com/pt/user/dasboard在这种情况下它将是段2,但是这样app会失去可伸缩性,因为将来相应的段可能不一样(2在上面的例子中)

php laravel laravel-5 laravel-blade laravel-authentication

19
推荐指数
4
解决办法
2万
查看次数

如何在Visual Studio代码中格式化Laravel刀片代码?

我安装了一些Visual Studio代码扩展来处理Laravel刀片代码

laravel-blade [ https://marketplace.visualstudio.com/items?itemName=KTamas.laravel-blade ]

Laravel Blade Snippets [ https://marketplace.visualstudio.com/items?itemName=onecentlin.laravel-blade ]

但他们没有帮我格式化Laravel刀片代码[blade.php文件].我的意思是他们没有像我预期的那样自动缩进代码.但我已经看到在线刀片代码在Visual Studio Code IDE中缩进.

示例:

在此输入图像描述

https://medium.com/@ardanirohman/laravel-%EF%B8%8F-visual-studio-code-debug-environment-65440274d3b0

他们可以使用任何特定的配置或技术来实现这些扩展吗?还是有其他方法吗?提前致谢

php laravel visual-studio-code laravel-blade

19
推荐指数
7
解决办法
2万
查看次数

Lumen/Laravel 6:调用未定义的函数 array_except()

所以我的 Mailable 视图抛出了这个错误——这就是我手头上的一切。当我使用 Lumen 5.8 时它运行良好,所以我猜测它是在升级到 Laravel 6 之后发生的。

调用未定义的函数array_except()(查看:/kunden/182801_60322/tu/uat/api/resources/views/mail/invite-employee.blade.php)

我的刀片文件如下所示:

@extends('mail.master')

@section('content')
<tr>
    <td align="left" style="border: 1px solid #dddee5; border-bottom: 2px solid #cecfd9; padding; 20px;">
        <div class="padded">
            <p>
            {!! nl2br(e($data->message)) !!}
            </p>
        </div>
    </td>
<tr>
<tr>
    <td align="left" bgcolor="#eaeaf2" class="padded">
        <p style="margin-bottom: 5px;" class="cta-label">{{ $data->copy->click }}</p>
        <div class="cta-link">
            <a style="color: #337BE9;" class="cta-link--a" href="{{ $data->appUrl }}/{{ $data->route }}/{{ $data->verificationCode }}">{{ $data->appUrl }}/{{ $data->route }}/{{ $data->verificationCode }}</a>
        </div>
        <p style="font-size: 12px; margin-top: 10px;">{{ $data->copy->mistake }}</p>
    </td>
</tr>
@endsection
Run Code Online (Sandbox Code Playgroud)

显然代码的任何部分都没有试图调用该函数。

我的 composer.json …

php laravel lumen laravel-blade laravel-6

19
推荐指数
2
解决办法
2万
查看次数

如何仅显示Laravel Blade模板中集合中第一个项目的内容

我在Blade模板中有一个@foreach循环,需要对集合中的第一个项目应用特殊格式.如何添加条件以检查这是否是第一项?

@foreach($items as $item)
    <h4>{{ $item->program_name }}</h4>
@endforeach`
Run Code Online (Sandbox Code Playgroud)

php laravel-5.1 laravel-blade

16
推荐指数
5
解决办法
2万
查看次数

刀片内联if和else if语句

是否有语法在Laravel刀片模板中指定内联if和else if语句?

通常,if和else语句的syntaxt将是:

{{ $var === "hello" ? "Hi" : "Goodbye" }}
Run Code Online (Sandbox Code Playgroud)

我现在想要包含if if语句,这可能吗?

 {{ $var === "hello" ? "Hi" : "Goodbye" else if $var ==="howdie ? "how" : "Goodbye""}}
Run Code Online (Sandbox Code Playgroud)

laravel-5 laravel-blade

16
推荐指数
4
解决办法
2万
查看次数

将数据从控制器传递到Laravel中的视图

嘿伙计们我是laravel的新手,我一直试图将表'student'的所有记录存储到变量中,然后将该变量传递给视图,以便我可以显示它们.

我有一个控制器 - ProfileController,里面有一个函数:

    public function showstudents()
     {
    $students = DB::table('student')->get();
    return View::make("user/regprofile")->with('students',$students);
     }
Run Code Online (Sandbox Code Playgroud)

在我看来,我有这个代码

    <html>
    <head></head>
    <body> Hi {{Auth::user()->fullname}}
    @foreach ($students as $student)
    {{$student->name}}

    @endforeach


    @stop

    </body>
    </html>
Run Code Online (Sandbox Code Playgroud)

我收到此错误:未定义的变量:学生(查看:regprofile.blade.php)

php laravel laravel-blade

15
推荐指数
3
解决办法
8万
查看次数

如何修复无效请求(不支持的 SSL 请求)

我正在设置我的 Laravel 应用程序,每次运行 php artisan serve 时,它​​都会在 localhost:8000 启动 Laravel 开发服务。但是当我在浏览器上打开 locahost 链接时,它会强制 http 到 https 并记录无效请求(不支持的 SSl 请求)。你建议我怎么做才能解决这个问题?

我已经尝试将 HTTPS mod 重写规则强制到 .htaccess 文件上的 http:// 并且它仍然存在。

这是命令行

C:\Users\topaz\cashurban>php artisan serve
Laravel development server started: <http://127.0.0.1:8000>
[Thu Aug 22 23:06:07 2019] 127.0.0.1:60410 Invalid request (Unsupported SSL request)
[Thu Aug 22 23:06:08 2019] 127.0.0.1:60418 Invalid request (Unsupported SSL request)
[Thu Aug 22 23:06:08 2019] 127.0.0.1:60419 Invalid request (Unsupported SSL request)
[Thu Aug 22 23:06:08 2019] 127.0.0.1:60420 Invalid request (Unsupported SSL request) …
Run Code Online (Sandbox Code Playgroud)

css http laravel laravel-blade

14
推荐指数
3
解决办法
4万
查看次数

Laravel刀片复选框

我想从数据库设置复选框状态,所以我写,

{{ Form::checkbox('asap', null, $offer->asap) }}
Run Code Online (Sandbox Code Playgroud)

但是如果我想将id设置为复选框之类的话

{{ Form::checkbox('asap', null, $offer->ASAP, array('id'=>'asap')) }}
Run Code Online (Sandbox Code Playgroud)

它始终将我的复选框状态设置为true.(在用户选择之前)

那么问一下在用户选择它之前如何设置复选框状态,如何在刀片复选框中设置ID?

php checkbox laravel laravel-blade

13
推荐指数
2
解决办法
7万
查看次数