4.5. 话题列表页面

本教程最新版为 9.x,当前版本已放弃维护,请阅读最新版本!

说明

上一章节中,我们往数据库里填充了 10 个用户和100 条话题数据,本章节中我们将开发帖子列表页面,为这些话题数据提供访问的入口。

模型关联

开始之前,我们需要对 Topic 数据模型进行修改,新增 categoryuser 的模型关联:

  • category—— 一个话题属于一个分类;
  • user —— 一个话题拥有一个作者。

这两个关联都属于 一对一 对应关系,故我们使用 belongsTo() 方法来实现,代码如下:

app/Models/Topic.php

<?php

namespace App\Models;

class Topic extends Model
{
    protected $fillable = ['title', 'body', 'user_id', 'category_id', 'reply_count', 'view_count', 'last_reply_user_id', 'order', 'excerpt', 'slug'];

    public function category()
    {
        return $this->belongsTo(Category::class);
    }

    public function user()
    {
        r...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
贡献者:7
讨论数量: 23

bignose
总结要点:使用 Laravel 开发工具,ORM 查询的 N + 1 问题
28 个点赞 | 3 个回复 | 分享 | 课程版本 5.5
logic
with 关联属性的设定?
2 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
bing_
请问,如何让 Bootstrap 分页尺寸适应手机屏幕 ?
1 个点赞 | 4 个回复 | 分享 | 课程版本 6.x
zgnMark
修改 topics-index 样式无效
1 个点赞 | 0 个回复 | 问答 | 课程版本 5.5
残夜
app.scss 样式更新了没有生效,也不是缓存的问题,怎么破?
0 个点赞 | 12 个回复 | 问答 | 课程版本 5.5
holyLight
Topic 和 User 为什么是一对一关系?
0 个点赞 | 10 个回复 | 问答 | 课程版本 5.8
CaiBird008
Laravel-debugbar 需要账号密码?
0 个点赞 | 9 个回复 | 问答 | 课程版本 5.5
吃瓜群众
请问 appends (Request::except ()) 是什么意思?
0 个点赞 | 7 个回复 | 问答 | 课程版本 5.5
huajuntang
如何在列表页面能够显示话题中图片的缩略图?
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
JxMarco
通过模型生成的 SQL 查询语句问题?
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
吃瓜群众
请问如何创建 https 开头的网站?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
嘉宝君
右边导航栏样式没框?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
AGLB
请问 为什么 appends (Request::except ()) )->render () 而不是 link ()
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
Jhaihao
一对一关联模型的问题?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
不负韶华。
这个配置文件复制如何知道这个路径?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
kakaxi
为什么这个路由没有命名,也可以直接用route()渲染
0 个点赞 | 1 个回复 | 问答 | 课程版本 7.x
zjnn
分页这里为什么要在传参数时将 page 排除在外呢?
0 个点赞 | 1 个回复 | 问答 | 课程版本 6.x
zhangqing
关联模型的 migration 中,没有采用外键约束
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.8
xxr_yeah
{!!$topics->render ()!!}
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
la2019
/topics/index.blade.php 内容替换后样式没有正常显示
0 个点赞 | 0 个回复 | 问答 | 课程版本 5.7
Starxiong
DebugBar route domain
0 个点赞 | 0 个回复 | 问答 | 课程版本 5.5