首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用Laravel Blade通过id链接评论到每个帖子

Laravel Blade是Laravel框架中的模板引擎,它提供了一种简洁、直观的方式来构建视图。通过Laravel Blade,我们可以轻松地通过id链接评论到每个帖子。下面是一种实现方式:

  1. 首先,确保你已经安装了Laravel框架并创建了相应的数据库表和模型。
  2. 在你的视图文件中,使用Blade模板引擎的语法来生成评论表单。你可以使用{{ }}来输出变量,使用@if@endif来进行条件判断,使用@foreach@endforeach来遍历数据等。

例如,你可以创建一个名为comments.blade.php的视图文件,其中包含一个评论表单和展示评论的区域:

代码语言:php
复制

<h2>评论</h2>

<form action="/comments" method="POST">

代码语言:txt
复制
   @csrf
代码语言:txt
复制
   <input type="hidden" name="post_id" value="{{ $post->id }}">
代码语言:txt
复制
   <textarea name="content" placeholder="请输入评论内容"></textarea>
代码语言:txt
复制
   <button type="submit">提交评论</button>

</form>

<h3>评论列表</h3>

@foreach ($post->comments as $comment)

代码语言:txt
复制
   <div>
代码语言:txt
复制
       <p>{{ $comment->content }}</p>
代码语言:txt
复制
       <p>评论人:{{ $comment->user->name }}</p>
代码语言:txt
复制
   </div>

@endforeach

代码语言:txt
复制

在上述代码中,我们使用$post->id来获取当前帖子的id,并将其作为隐藏字段传递给评论表单。同时,使用$post->comments来获取当前帖子的所有评论,并使用$comment->content$comment->user->name来展示评论内容和评论人。

  1. 在路由文件中,定义处理评论的路由和控制器方法。你可以使用Laravel的路由系统来定义路由,并将其指向相应的控制器方法。

例如,你可以在web.php文件中添加以下路由定义:

代码语言:php
复制

Route::post('/comments', 'CommentController@store');

代码语言:txt
复制

然后,在CommentController控制器中添加store方法来处理评论的存储逻辑:

代码语言:php
复制

public function store(Request $request)

{

代码语言:txt
复制
   $comment = new Comment();
代码语言:txt
复制
   $comment->post_id = $request->input('post_id');
代码语言:txt
复制
   $comment->content = $request->input('content');
代码语言:txt
复制
   $comment->user_id = Auth::id();
代码语言:txt
复制
   $comment->save();
代码语言:txt
复制
   return redirect()->back();

}

代码语言:txt
复制

在上述代码中,我们首先创建一个新的Comment模型实例,并将请求中的帖子id、评论内容和当前用户id赋值给相应的属性。然后,调用save方法将评论保存到数据库中。最后,使用redirect()->back()方法将用户重定向回之前的页面。

  1. 最后,确保你已经正确配置了数据库连接和认证系统。你可以在.env文件中配置数据库连接信息,并使用Laravel提供的认证系统来管理用户认证。

至此,你已经完成了通过id链接评论到每个帖子的功能。用户可以在帖子页面中填写评论表单,提交后评论将被保存到数据库,并显示在评论列表中。

请注意,以上答案是基于Laravel框架和Laravel Blade模板引擎的实现方式。如果你想了解更多关于Laravel的信息,可以参考腾讯云的Laravel产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何通过View::first使用Laravel Blade的动态模板详解

前言 本文主要给大家介绍了关于View::first使用Laravel Blade动态模板的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。...例如,当我们创建页面模块的时候,通常需要给“关于我们”和“联系我们”自定义模版(如展示照片或者联系表单),而“我们的服务”则可以使用默认模板。...我们可以通过一系列的 if 判断或者使用 view()->exists()  来判断自定义模板是否存在,然而,Laravel 5.5 为我们带来了一个更加优雅的方法来实现这个功能。...当然,你可以传递任意个数的模版,你甚至还可以使用动态名称: return view()->first([ "pages/{$page->slug}", "pages/category-{$page-/【...,你还可以通过 Facade 版本的这个功能: View::first($templates, $data) 这个动态选择模版的 Blade 方法是在 Laravel 5.5 中引入的,使得处理动态模版更加简洁

1.3K30

详解laravelblade模板带条件分页

答: Blade模板是Laravel提供一个既简单又强大的模板引擎; 和其他流行的PHP模板引擎不一样,他并不限制你在视图里使用原生PHP代码; 所有Blade视图页面都将被编译成原生的PHP代码并缓存起来...默认情况下,当前页通过 HTTP 请求查询字符串参数 page 的值判断。当然,该值由 Laravel 自动检测,然后自动插入分页器生成的链接中。...简单分页 如果你只需要在分页视图中简单的显示“下一页”和“上一页”链接,可以使用 simplePaginate 方法来执行一个更加高效的查询。...所以,获取到结果后,可以按如下方式使用 Blade 显示这些结果并渲染页面链接: <div class="container" @foreach ($users as $user) {{ $user...每个链接已经包含了 page 查询字符串变量。记住,render 方法生成的 HTML 兼容 Bootstrap CSS 框架。

7.3K30
  • laravel框架学习记录之表单操作详解

    分享给大家供大家参考,具体如下: 1、MVC数据流动 拿到一个laravel项目最基本的是弄清楚它的页面请求、数据流动是怎样进行的,比如当通过get请求index页面时,如何显示如下的学生信息列表: ?...采用模板的思路来实现index页面:新建页面的模板文件layout.blade.php文件,保留其中的公共部分,将其中不同的地方通过@section或者@yield替换。...2、在blade中引入页面资源文件 虽然视图文件放在resources/views目录下,但是blade文件编译完成后将位于public目录下,所以其中的目录是相对于public而言的,页面所需要的静态资源应该放在...li {{$error}}</li @endforeach </ul </div @endif 也可以$errors- first()获取指定字段的验证错误,显示在每个输入框之后...页面请求跳转到一个action,无法找到该Controller <a href="{{action('StudentController@delete',['<em>id</em>'= $student- <em>id</em>])}}"

    12.6K30

    Laravel 7发行说明

    7 Laravel 7 通过引入 Laravel Sanctum,路由速度改进,自定义 Eloquent 强制转换(casts), Blade 组件标签,流畅的字符串操作,开发人员专用的 HTTP 客户端...自定义键名 有时你可能希望使用 id 以外的字段来解析 Eloquent 模型。...Laravel 7 允许为单个应用配置多个邮件驱动。在 mail 配置文件中的每个邮件驱动都拥有它们自己的配置以及自己独特的 「transport」,这允许你的应用使用不同的邮件服务来发送某些邮件。...默认情况下,Laravel使用 mail 配置文件中的 default 选项指定的邮件驱动作为邮件驱动。然而,你可以通过 mailer 方法来使用特定的邮件驱动来发送邮件。...Heuvel 贡献 Laravel 7 通过集成由 Barry vd.

    9K20

    30分钟用Laravel实现一个博客

    (5个功能7条是因为 添加和编辑多了2条载入视图的路由) 完成增删改查吧: 首先完成 BlogController@index : 展示列表 先来个入口链接,打开 home.blade.php {.../layouts/app.blade.php {{-- route('路由别名') 在视图上就是一个指向 BlogController@create 的链接 --}} <a href="{{ route...完成我们的编辑入口<em>链接</em>: 在 .....'index'); } 在 新增create、编辑edit、和删除方法中加入一次用户认证,以 create 方法举例 // 因为比较简单,所以我们不用Policy进行认证,我会在以后的教程里面教大家<em>如何</em><em>使用</em>...当然,我们还有 Request 请求认证 Policy 策略控制等等一些列的特性没有学习,我们也只<em>使用</em>了一次composer,其实在开发<em>Laravel</em>时,我们还可以<em>使用</em>非常多的,支持<em>Laravel</em>的,完善的轮子可以利用

    7.4K00

    Laravel5.2之Demo1——URL生成和存储

    引言: 本文基于Laravel框架做的一个URL生成和存储demo,主要目的是学习使用Laravel框架。...书籍基于Laravel4的,学习时使用Laravel5.2框架开发。...在这里使用laravelcollective/html这个组件,顺便了解下怎么在laravel中安装组件。 这里书中使用laravel4.*自带的Form类,但laravel5....record 返回该链接给用户(1).使用Query Builder的where()方法,并传入Input::get('link')参数验证数据表里是否已经有该链接,并链式使用first()方法取出第一个结果... @endif (3).链接不在数据表里,为该链接创建一个hash字段,原文使用newHash = Str::random(6)创建一个包含数字字母的字符长度为6的字符串,再去表里验证该

    24.1K31

    Laravel5框架自定义错误页面配置操作示例

    分享给大家供大家参考,具体如下: ♩ 背景 最近试着学习 laravel 5.5,使用 composer 下载新的框架源代码 composer create-project --prefer-dist...laravel/laravel lar5Pro 5.5.* 发现在输入错误的链接时,会有如下的提示信息: ?...想到,一般成型的网站都会自定义404、501、503等页面,所以通过网上搜索方法,进行测试,可推荐如下的实现过程 … 框架: Laravel 5.5 ♪ 操作 ①....访问测试 举例来讲,在 404.blade.php 中编辑设计自己的 404页面 通过访问一个不存在的路由,以本人为例,显示效果如下: ?...♫ 附录 根据上面的操作,可扩展创建其他错误页面 此处附录一下 404.blade.php 源代码,仅做参考 <!

    1.3K20

    Laravel5.8开发环境搭建与CRUD应用实践

    在这个面向初学者的教程中,我们将学习如何使用最新的PHP开发框架Laravel 5.8,来创建一个基于MySQL数据库的Web应用,实现联系人的增删改查功能。...可以使用下面的命令来验证安装的版本: ~$ cd crud-app ~/crud-app$ php artisan -V Laravel Framework 5.8.19 3、安装Laravel项目的前端依赖库...需要的SQL数据表了: ~/crud-app$ php artisan migrate 5、创建第一个Laravel模型 Laravel使用MVC架构模式来将应用解耦为三个部分: 模型Model用来封装数据访问层...destroy($id) { // } } ContractController类继承自Laravel的Controller类,并且定义了一组方法用于对Contact模型的...---- 原文链接Laravel 5.8简明教程 — 汇智网 (adsbygoogle = window.adsbygoogle || []).push({});

    6.2K30

    Laravel 视图使用入门

    视图是 MVC 模式中的 View 部分,大部分视图都应该是 HTML 格式文本,在 Laravel 中,支持三种格式的视图文件解析:CSS 文件,原生 PHP 和 Blade 模板(下一篇教程将会讨论...从文件名扩展就可以区分它们,CSS 文件后缀是 .css,通过文件引擎解析,原生 PHP 文件后缀是 .php,通过 PHP 引擎解析,Blade 模板文件后缀是 .blade.php,通过 Blade...Laravel 在解析视图时是通过实时解析文件后缀名再调用相应的引擎进行处理的,视图文件位于 resources/views 目录下,对于多级子目录以「.」号分隔,并且引用时不带文件后缀名。...blade Route::get('page/{id}', function ($id) { return view('page.show', ['id' => $id]); })->where...在实际开发过程中,我们大多会使用 Blade 模板,因为其提供了丰富的语法从而简化了视图文件的编写。

    5.3K50

    Laravel 7 正式发布,一起来看看有哪些重要更新吧

    Airlock 是基于令牌(Token)的 API 认证实现,允许为应用的每个用户生成多个 API 令牌,这些令牌可用于被授权执行指定的动作。...关于 Airlock 的使用细节,在 Laravel 文档中有详细介绍。...Blade 组件标签&优化 Blade 组件现在被重构为允许基于标签进行渲染、属性管理、定义组件class、内联视图组件等,关于这一块的具体细节,在 Laravel 文档中有详细介绍。...更多特性 以上只是 Laravel 7 众多新特性中的一小部分,你可以通过官方文档的版本更新以及升级指南查看完整的新特性:https://laravel.com/docs/7.x/releases。...声明:以上内容整理自 Laravel News,原文链接:https://laravel-news.com/laravel7。

    2.6K10

    Laravel框架Blade模板简介及模板继承用法分析

    本文实例讲述了Laravel框架Blade模板及模板继承用法.分享给大家供大家参考,具体如下: 本章知识点主要如下: Blade模板简介 Blade模板继承使用 NO.1Blade模板简介 问:...答: Blade模板是Laravel提供一个既简单又强大的模板引擎; 和其他流行的PHP模板引擎不一样,他并不限制你在视图里使用原生PHP代码; 所有Blade视图页面都将被编译成原生的PHP代码并缓存起来...NO.2Blade模板继承使用 先说一下这里我们会用到的知识点 section yield extends parent 问: Blade模板继承使用的优势在哪?为什么要使用它?...但是你要是用到了Blade模板继承,你就可以省掉那些一样板块代码的数量; 为什么要使用它?因为方便维护,也节省代码量。 多说无益,我们拿出事实说话。...rel="external nofollow" rel="external nofollow" 网站名</a </div <div class="collapse navbar-collapse" id

    1.1K31

    基于 PHPStorm 编辑器的 Laravel 开发

    引言 本文主要讲述在PHPStorm编辑器中如何使用PHPStorm的Laravel插件和Laravel IDE Helper来开发Laravel程序,结合个人积累的一点经验来说明使用PHPStorm编辑器来开发程序还是很顺手的...对Blade模板引擎的支持 使用PHPStorm调试Laravel程序 使用PHPStorm调试Laravel程序 使用PHPStorm的单元测试功能 使用PHPStorm的数据库功能 1、一些准备工作...总的来说,PHPStorm对Blade模板的代码提示和补全还是支持的比较好的,使用很顺手。...5、使用PHPStorm的Database链接Laravel程序数据库 PHPStorm中提供了database插件,功能也比较强大,我想用过PHPStorm的应该都知道如何使用,这里聊下一个很好用的一个功能...经常遇到这样的一个情景:数据库装在数据库服务器db.test.com中,但本地是登陆不上去的,但 在开发服务器host.company.com是可以链接数据库服务器的,那如何使用database来连接数据库服务器呢

    3.7K80

    2018年laravel教程第1节搭建项目phpstorm添加laravel代码提示新建路由和控制器渲染页面定义公共模板文件公共头部和底部小结

    laravel 不管你用的是哪个框架,作为PHP开发者,都很有必要学laravel laravel虽好,入门门槛却不低,尤其对于习惯了使用thinkphp的同学,切换到laravel还是有些难度的,因此...,本系列laravel教程会详细地演示如何laravel开发一个简易的网站。...功能主要有: 注册、登录 用户增删改查 用户权限管理 文章增删改查 用户互相关注 通过以上业务,我们将熟悉laravel的常用工作流,由于不同人的知识储备不一样,教程不可能顾及到方方面面,如果看到有些环节不懂...接下来使用composer安装laravel: ☁ program [master] ⚡ composer create-project laravel/laravel LaravelStudy --..."nav-link text-light" href="{{ route('register') }}">注册 头部导航中的a标签链接使用了命名路由

    2.1K20

    Laravel5下自定义错误页面的配置

    https://blog.csdn.net/u011415782/article/details/78794522 ♩ 背景 最近试着学习 laravel 5.5,使用 composer 下载新的框架源代码...composer create-project --prefer-dist laravel/laravel lar5Pro 5.5.* 发现在输入错误的链接时,会有如下的提示信息: ?...想到,一般成型的网站都会自定义404、501、503等页面,所以通过网上搜索方法,进行测试,可推荐如下的实现过程 … 框架: Laravel 5.5 ♪ 操作 ①....访问测试 举例来讲,在 404.blade.php 中编辑设计自己的 404页面 通过访问一个不存在的路由,以本人为例,显示效果如下: ?...♫ 附录 根据上面的操作,可扩展创建其他错误页面 此处附录一下 404.blade.php 源代码,仅做参考 <!

    1.3K40

    详解将数据从Laravel传送到vue的四种方式

    在过去的两三年里,我一直在研究同时使用 Vue 和 Laravel 的项目,在每个项目开发的开始阶段,我必须问自己 “我将如何将数据从 Laravel 传递到 Vue ?”。...赞成: 简单明了 反对: 必须与嵌入到 Blade 模板中的 Vue 应用程序一起使用 可以说是将数据从 Laravel 应用程序移动到 Vue 前端的最简单方法。...对于 Laravel 5.5+ 使用 json 指令: 使用自定义组件和 Laravel 自身的 json blade 指令可以让您轻松地将数据移动到道具中。...在过去,我用它作为存储和访问 API 基 URL、公钥、特定模型 ID 和各种其他需要在整个前端使用的小数据项的方法。 不过,使用此方法有一点需要注意,这就是访问 Vue 组件内部数据的方式。...这个方法唯一警告的是,你必须使用 Laravel 和 一个 blade 模板来渲染前端。这样框架可以将必要的会话令牌和变量注入到请求当中。 使用 JWT 认证的 API 调用 ?

    8.1K31

    【译】20个 Laravel Eloquent 小技巧(上)

    下面是翻译自 Laravel-News 的一篇教程,总结了 Laravel 的对象关系映射框架(ORM)的几个小技巧。...Carbon 提供的时间方法 protected $appends = ['field1', 'field2']; // 序列化时候附加的额外属性,通过模型中定义 getXXXAttribute...get(); 改成这样: $users = User::whereApproved(1)->get(); 是的,你也可以改成任何字段的名称,并将其作为后缀附加到“where”,它将神奇的产生预想的效果(通过魔术方法实现调用...使用关系模型字段排序 一个更复杂的“技巧”。 如果你有帖子,但要通过最新帖子对它们进行排序? 顶部有最新更新主题的论坛中非常常见的要求,对吧?...BelongsTo 关联的默认模型对象 假设有个 Post(帖子) 对象属于 Author (作者)对象,在 Blade 模板中有下面的代码 {{ $post->author->name }} 但是如果作者被删除

    2.2K50

    Laravel 项目中编写第一个 Vue 组件

    和 CSS 框架一样,Laravel 不强制你使用什么 JavaScript 客户端框架,但是开箱对 Vue.js 提供了良好的支持,如果你更熟悉 React 的话,也可以将默认的脚手架代码替换成 React...既然已经有这么丰富的资源,关于 Vue.js 的介绍和使用,我这里就不赘述了,我们重点来介绍如何Laravel通过 Vue 组件构建前端页面和功能。...、可读性和可维护性,下面我们以 Laravel 默认的欢迎页面为例,将其改为通过 Vue 组件来实现,希望可以帮助你快速入门如何Laravel 中编写 Vue 组件。...方法全局注册了 welcome-component 组件,第一个参数是组件名,第二个参数是引入组件文件的位置,这样我们就可以在 resources/views/welcome.blade.php 视图文件中通过组件名使用这个组件了...移除了之前的 HTML 代码,将其改为通过 welcome-component 组件引入,并且将组件挂载到 id="app" 的 div 容器内,这是我们在 app.js 中定义的 Vue 容器,如果组件不挂载到这个容器将不会生效

    3.3K30
    领券