1.建立数据表存放博客文章 tp_articles
2.创建文章模型来管理文章表
3.完善模型
4.控制器获取文章列表传递给模板
5.改造模板,循环遍历数据
根据自己的习惯,尽量是页面结构简洁。保留功能。
页面效果
6.顶部添加博客,首先修改页面给添加博客写上连接。
然后回到页面点击添加博客,报错。很明显没有模板。
此时我们因为有基础的模板,先去view/blog中建一个create.html把基本的结构写好,再去对应的hui-admin模板中去找article-add.html拿到对应<article></article>的部分填充进来。
然后页面报错,修改页面结构。具体参考下面的图修改。或者把没用的删除掉。此时在修改页面的时候发现一个问题,在模板中坑挖的大了···需要在layout基础页面中,block区域缩小一点!
修改layout.html页面
此时添加页面就OK啦张这个样子,然后根据数据的字段来修改页面。
最终页面效果
页面的代码
下边给添加按钮写点击事件,发送ajax到控制器的方法进行处理。
此时提供一种思路,我们不需要在每个页面下边去写点击事件,我们可以放在公共的模板文件中写点击事件,因为在发送ajax时候,我们只是提交的地址不一样而已,所以可以放在一起。不知各位能否理解??? 找到layout页面,下边写事件。这个大家自己研究。
我们还是写在各自的页面下目!!!另外在添加内容的时候,改造成百度富文本编辑器,具体请参考之前的博客项目,我就不给大家写了………………
回到blog.php中写save方法 打印接受的数据发现,在状态的地方有问题需要修改value值,0未发布,1已发布。
修改页面
调试结果
关于调试一定要多点一下在network里。
然后还是老套路,拿到数据后,校验,找模型插入到数据库~~~
验证的话同学们自己写,我就不写啦,时间就是金钱!~~~
最终方法代码
添加的页面效果
此时添加功能就完成了!但是发现共有多少条数据和分页还没有。
去控制器获取总条数,然后view()函数中 compact多加一个,逗号隔开。
return view('index', compact('list', 'total'));
去模板修改一下总条数的值
分页已经写好了,默认是每一页15条数据,我们在paginate(2)里修改一下。
//index 博客列表
public function index()
{
//获取文章列表
$db = new ArticleModel();
$list = $db->paginate(2);
//获取总条数 直接写total方法即可
$total = $list->total();
//dump($list);die();
return view('index', compact('list', 'total'));
}
然后要在页面里把分页显示出来,我们之前见过这个方法,是不是忘了~~~
在页面中加入代码,放在table外边。
然后分页就有了
5条数据每页显示两条此处是第3也显示只显示第5条数据。
关于样式的话,大家自己去调整。寒假作业有自己学习bootstrap,
很简单你只需要把bootstrap下载下来引入到我们项目里就可以啦。最好是放在layout.html基础页面中,因为其他的地方也会有分页。
效果图
接下来是删除!!!