laravel-blade 相关问题

Blade是Laravel提供的简单而强大的模板引擎。与其他流行的PHP模板引擎不同,Blade不会限制您在视图中使用纯PHP代码。

出现语法错误,blade.php 上出现意外的文件结尾

在 forelse 中插入 @if 后出现此错误,并出现语法错误。 我的 home.blade.php: @extends('主') @section('标题介绍') @结束部分 @section('主') 在 forelse 中插入 @if 后出现此错误,并出现语法错误。 我的home.blade.php: @extends('master') @section('header-intro') @endsection @section('main') <div class="container"> <!--Section: Content--> <section class="text-center"> <div class="posts"> @forelse ($posts as $post) @if (auth()->user()->id === $post->user->id) <div class="post"> <div class="card"> <div class="bg-image hover-overlay ripple" data-mdb-ripple-color="light"> <img src="{{ asset('storage/') . '/' . $post->thumb }}" class="img-post" /> <a href="#!"> <div class="mask" style="background-color: rgba(251, 251, 251, 0.15);"></div> </a> </div> <div class="card-body"> <h5 class="card-title">{{ $post->title }}</h5> <p class="card-text"> {{ Str::limit($post->body, 58, '...') }} </p> <p>Autor: {{ $post->user->name }} - has {{ $post->comments->count() }} comments</p> <a href="{{ route('post', $post->slug) }}" class="btn btn-primary">read more</a> </div> </div> </div> @else <h4>no posts for you</h4> @endforelse </div> @if (request()->input('search')) {{ $posts->appends(['search' => request()->input('search')])->links() }} @endif </section> </div> @endsection Forelse 是显示帖子,我需要 if 只向此页面内的“所有者”显示帖子。 您需要结束 if 语句,然后结束 forelse。当 $posts 数组中没有元素时,您调用 @empty @endif @empty <h4>no posts for you</h4> @endforelse 这很令人困惑,因为您在 forelse 语句中使用了 if 语句。 else 适用于没有要迭代的元素时。但你并没有结束 if 语句。 从技术上讲,为了完整起见,我建议也在循环内重复您的@else,因为您可能会遇到这样的情况:您可能在 $posts 数组中拥有元素,但不适合此授权用户。 也许是这样的: @forelse ($posts as $post) @if (auth()->user()->id === $post->user->id) ... your existing elements ... @else <h4>no posts for you</h4> @endif @empty <h4>no posts</h4> @endforelse

回答 1 投票 0

无法在映射数组中找到正确的值

这是我的代码: @foreach($meals 为 $keys=>$meal) {{$键+1}} ...

回答 1 投票 0

在视图中找不到刀片组件中的公共属性

嗨,我正在尝试制作一个简单的刀片组件,但公共属性在视图中不可用,如文档所述: 班级 类 ExampleComponent 扩展 Component { 公共字符串...

回答 1 投票 0

如何在 vue.js 中转义大括号

我的数据库中的数据可能包含大括号{{ }}。 {{-- app.blade.php 内 --}} ...代码 {{ $数据}} 我的数据库中有数据,其中可能包含大括号{{ }}。 {{-- inside app.blade.php --}} <!-- vue app --> <div id="app"> ...code <div> {{ $data }} </div> ...code </div> 因此,如果我想向用户显示它,则该数据在 Vue 应用程序内部会导致问题。并且 vue 认为它是要执行的 javascript 代码。 例如,如果 $data 等于 {{ title->links() }} 那么我会收到错误,整个应用程序根本无法编译。 (它通过刀片模板)。 [Vue warn]: Error compiling template: invalid expression: expected expression, got '>' in _s(title->links()) Raw expression: {{ title->links() }} 305| <div>{{ title-&gt;links() }}</div> | ^^^^^^^^^^^^^^^^^^^^^^^ 逃避用户数据的大括号(在 Vue.js 中)的最佳方法是什么?? 您需要使用 {{ }} 或 v-pre 指令:v-html 或 <div v-pre>{{ data }}</div>

回答 1 投票 0

即使我使用 post 方法,此刀片页面也会在表单提交后不断重新加载

我正在尝试创建一个功能,以方便生成考试时间表。我的课程和讲师表工作正常,但生成时间表的功能似乎......

回答 1 投票 0

laravel 将图像以完整路径存储在数据库中,但我无法检索

我正在制作一个网站,您可以在其中通过表单存储文件,然后它会显示在页面上。 这是我要插入的表格:, 我正在制作一个网站,您可以在其中通过表单存储文件,然后它会显示在页面上。 这是我要插入的表格:, <form action="{{ route('post.store') }}" method="POST" enctype="multipart/form-data"> @csrf <div class="bg-grey-lighter pt-15"> <label class="w-44 flex flex-col items-center px-2 py-3 bg-white-rounded-lg shadow-lg tracking-wide uppercase border border-blue cursor-pointer"> <input type="file" name="thumb" class="hidden"> </label> </div><br> 这是我用来显示图像的代码: <img src="{{ asset('/images/posts/' . $post->thumb }}" class="img-post" /> <br> 这是我的PostController:(拇指是数据库中字段的名称) public function update(Request $request, Post $post, $id) { $post = Post::findOrFail($id); $path = public_path('images/'); $imageName = time(). '.' . $request->thumb->extension(); $post->thumb = $request->thumb->move($path, $imageName); $request->validate([ 'thumb' => 'mimes:jpeg,png,jpg,gif', ]); $post->update(); return redirect()->back()->with('success', 'updated'); } 在数据库中存储如下: C:\Users\users name\Documents\laravel\projeto-qbv2\public\images/posts\1700092184.png 在 Laravel 中,图像存储在: public\images\posts 已经尝试更改功能,img src... 你需要使用laravel文件存储系统。 首先您需要配置存储符号链接。 您可以通过在 artisan CLI 中运行此命令来完成此操作: php artisan storage:link 您可以在文件系统配置文件中配置其他符号链接。当您运行 storage:link 命令时,将创建每个配置的链接: 'links' => [ public_path('storage') => storage_path('app/public'), public_path('images') => storage_path('app/images'), ], 之后,您就可以简单地使用存储功能了: 你的 PostController.php 代码将是这样的: public function update(Request $request, Post $post, $id) { $post = Post::findOrFail($id); $request->validate([ 'thumb' => 'mimes:jpeg,png,jpg,gif', ]); if ($request->hasFile('logo')) { $path = $request->logo->store('/images'); $post->thumb = $path; $post->update(); return redirect()->back()->with('success', 'updated'); } } 这是您应该用来显示图像的代码: <img src="{{ asset('/storage/' . $post->thumb }}" class="img-post" /> <br> 希望对您有帮助。 有关这方面的更多信息,我推荐 Laravel 文档:https://laravel.com/docs/10.x/filesystem

回答 1 投票 0

“尝试读取字符串上的属性“titulo””Laravel

无论我做什么,这个错误都会不断出现,我已经寻找解决方案,但我太愚蠢了,无法理解发生了什么,请帮助我 preguntas.blade.php @extends('应用程序') @section('标题', '

回答 0 投票 0

如何在递归 Laravel 组件中实现循环索引?

我陷入了一个问题,尝试了很多方法但都是徒劳。 实际上我想要的是在递归 Laravel 组件中实现增量索引。 例如我希望索引是...

回答 1 投票 0

为什么每次我运行 PHP Artisan Serve 时,它看起来就像是我从哪里访问的仪表板?

这是我第一次使用 laravel Blade 和 Composer,在运行 php artisanserve 后我很困惑,当我输入 http://localhost:8000/news 时,应该会出现我编写的代码的显示。 .

回答 1 投票 0

Laravel 中的空属性

我正在尝试编辑数据库输出,但是当我使用 dd($customerlist); 时我得到空属性。 web.php(路线) 路线::get('/customer/{customer}/edit', 'App\Http\Controllers\CustomerListController...

回答 1 投票 0

想要隐藏当年的每月定价

我正在 laravel 中创建一个定价计划。它在“年和月”选项卡中显示“bon” 如何分离数据? @foreach($定价为$price) @php $options = json_decode($price->options, true)...

回答 1 投票 0

无法使用包含刀片模板访问变量

所以我的 app.blade.php 中有这个结构 If 语句检查用户是否有订阅,如果没有则显示子页面,否则显示仪表板 我将所有必需的变量发送到仪表板视图,如下所示 布...

回答 1 投票 0

Laravel:按类别和位置检索列表,包括所有子类别和位置

我正在尝试根据类别和位置获取列表,也包括所有子位置。我提供了过滤器表单的屏幕截图以供参考。 输入图片描述

回答 1 投票 0

如何将数据传递到Livewire中的布局?

我有一个问题。所以想法就在这里: 我有一个集合(来自表的数据 - 导航栏菜单项和子菜单项),我需要将其传递到我的布局页面,因为在我的情况下导航栏位于标题部分...

回答 1 投票 0

laravel 如何在渲染函数中将变量转换为字符串

我正在开发一个 Laravel 项目,我正在尝试加载我的数据表,我想要一个用于发送发布请求的列,这是我的脚本: var datatable = $('#table').on('xhr.dt', function(e,

回答 1 投票 0

如果添加ajax,Laravel Blade 不会加载

当我将以下 ajax 添加到我的 laravel Blade 文件时,页面停止渲染。 如果删除 ajax 部分,页面呈现完美 当我将以下 ajax 添加到我的 laravel Blade 文件中时,页面停止渲染。 如果删除 ajax 部分,页面渲染效果非常好 <input type="text" name="voucher_no" id="voucher_no" class="form-control"> <input type="text" name="year" id="year" value="{{ date('Y') }}"> <button type="button" id="convertFinal" class="btn btn-success me-1">Convert</button> <script> $("#convertFinal").on('click', function() { let voucherNo = $("#voucher_no").val(); let year = $("#year").val(); checkInvoiceNo(voucherNo, year); }); function checkInvoiceNo(voucherNo, year) { alert("in"); console.log(voucherNo, year); $.ajax({ type: 'POST', url: "{{ vouchername') }}", data: { '_token': '{{ csrf_token() }}', 'voucher_no': voucherNo, 'year': year, }, success: function(data) { if (data) { $("#form").submit(); } else { validationForm.valid(); $("#invoiceError").text('Voucher no. Must be unique.'); } } }); </script> 如果我删除 ajax 部分,则页面呈现、警报和日志都可以正常工作。 如果添加了ajax,则页面不会呈现,也不会在控制台中显示任何错误。 另外,我在这个项目中有多个ajax调用,它们在其他页面上工作正常,但仅在这个页面上引起问题。 问题来了。您的代码当前如下所示: <script> $("#convertFinal").on('click', function() { let voucherNo = $("#voucher_no").val(); let year = $("#year").val(); checkInvoiceNo(voucherNo, year); }); function checkInvoiceNo(voucherNo, year) { alert("in"); console.log(voucherNo, year); $.ajax({ type: 'POST', url: "{{ vouchername') }}", data: { '_token': '{{ csrf_token() }}', 'voucher_no': voucherNo, 'year': year, }, success: function(data) { if (data) { $("#form").submit(); } else { validationForm.valid(); $("#invoiceError").text('Voucher no. Must be unique.'); } } }); </script> 但它需要看起来像这样: <script> $("#convertFinal").on('click', function() { let voucherNo = $("#voucher_no").val(); let year = $("#year").val(); checkInvoiceNo(voucherNo, year); }); function checkInvoiceNo(voucherNo, year) { alert("in"); console.log(voucherNo, year); $.ajax( { type: 'POST', url: "{{ vouchername') }}", data: { '_token': '{{ csrf_token() }}', 'voucher_no': voucherNo, 'year': year, }, success: function(data) { if (data) { $("#form").submit(); } else { validationForm.valid(); $("#invoiceError").text('Voucher no. Must be unique.'); } } ); // <- remove the extra brace here } // <- you are missing this final closing brace </script> 我的猜测是,当你删除 $.ajax 的东西时,你并没有删除最后的 }); ,这会正确终止你的函数并默默地丢弃多余的 )。 但是在当前的形状中,它不会工作,因为你的 checkInvoiceNo 函数没有正确终止。 您的 checkInvoiceNo 函数中存在语法错误。 $.ajax({ type: 'POST', url: "{{ vouchername') }}", data: { '_token': '{{ csrf_token() }}', 'voucher_no': voucherNo, 'year': year, }, 在函数的这一部分中,语法错误位于为 ajax 函数调用提供的参数中的 url 属性处。请注意,在 vouchername 之后有 '),这可能是复制粘贴错误。删除它 (')),你就可以开始了。

回答 2 投票 0

嵌套循环:间隔循环为主循环的第一次迭代带来结果

我正在编写一个 Laravel 代码,其中我需要在刀片中使用嵌套循环。 这是我的控制器 公共函数显示(字符串$id) { $transaction = Transaction::findOrFail($id); $subject_id...

回答 1 投票 0

使用变量访问laravel项目blade文件中的对象属性

给定以下 PHP 对象和变量 $options = { '选项' : { '0' : '关闭' , '1' : '打开' }} $data->{$row->field}} = 0 或 1 语法错误方法 为什么我无法访问“0”并且...

回答 1 投票 0

Laravel 在 Blade 中使用配置变量的最佳实践

我在blade中有这个代码 if($user_type == 1) { // 做一点事 } if($user_type == 2) { // 做一点事 } 现在这段代码不好,因为其他开发人员不知道什么是 $user_...

回答 1 投票 0

如何使用 Laravel Eloquent 向 View 传递单行数据?

我对 Laravel 很陌生。我仍在学习这些概念。我尝试用谷歌搜索这个问题,但我不知道该输入什么? 我正在从数据库中检索单行、单列数据

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.