一百四十二:CMS系统之帖子详情页面布局

定义一个404页面

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>404</title></head><body>    页面不存在    <div><a href="/">点击回到首页</a></div></body></html>

在钩子函数中捕获并抛出自定义的404

@bp.errorhandlerdef page_not_found():    """ 发生错误返回404 """    return render_template(‘front/front_404.html‘), 404

视图

@bp.route(‘/p/<post_id>‘)def post_detail(post_id):    post = PostModel.query.get(post_id)    if not post:        abort(404)  # 如果没有找到资源,主动抛出404    return render_template(‘front/front_post_detail.html‘, post=post)

html

css

.post-container{    border: 1px solid #e6e6e6;    padding: 5px;}

.post-info-group{    font-size: 12px;    color: #8c8c8c;    border-bottom: 1px solid #e6e6e6;    margin-top: 20px;    padding-bottom: 10px;}

.post-info-group span{    margin-right: 20px;}

.post-content{    margin-top: 20px;}

.post-content img{    max-width: 100%;}

首页加上链接

效果

原文地址:https://www.cnblogs.com/zhongyehai/p/11980093.html

时间: 2024-07-31 16:29:52

一百四十二:CMS系统之帖子详情页面布局的相关文章

Flask实战第62天:帖子详情页布局

在templates/front/下创建详情页面front_pdetail.html 编辑front.views.py创建详情页的视图函数 from flask import abort ... @bp.route('/p/<post_id>/') def post_detail(post_id): post = PostModel.query.get(post_id) if not post: abort(404) return render_template('front/front_pd

Java Web总结二十二投票系统

投票系统需求: (1)查询所有候选人基本信息 (2)查询某位候选人详细信息 (3)投票人登录和退出 (4)投票人限制1分钟之内重复投票 (5)投票人IP和最后投票时间查询 (6)阻止相同用户名二次在线登录 (7)票数条形显示和候选人头像处理 (8)显示投票人归属地 (9)热门候选人,即投票数最多 (10)后台管理员登录 可选需求: (11)查询.删除.更新.增加候选人详细信息 (12)与一个Listener,创建所有表格式和初始化数据 代码参见:day19/vote(此处不上传) Java We

三十二、Java图形化界面设计——布局管理器之CardLayout(卡片布局)

摘自 http://blog.csdn.net/liujun13579/article/details/7773945 三十二.Java图形化界面设计--布局管理器之CardLayout(卡片布局) 卡片布局能够让多个组件共享同一个显示空间,共享空间的组件之间的关系就像一叠牌,组件叠在一起,初始时显示该空间中第一个添加的组件,通过CardLayout类提供的方法可以切换该空间中显示的组件. 1.  CardLayout类的常用构造函数及方法 2.  使用CardLayout类提供的方法可以切换显

第四百四十二、三天 how can I 坚持

昨天断网了,哎,其实可以学会习的,不知道为啥没学呢,干啥来呢,都快记不清了,听歌,后来睡觉了.也太单一了. 昨天和今天都搞oauth2.0登录了. 今天倒是学了不少东西,servlet基础,原来好多原理都不懂,好多基础啊,就知道傻傻的写程序,客户端跳转和服务器端跳转,this和super关键字在构造方法只能放在第一行, 好好学,进小米还是有希望的. 貌似知道要和什么样的人在一起了,不合适就是不合适,没有什么后悔的,天意如此,何必折腾. 睡觉.

leecode第一百四十二题(环形链表II)

/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode *detectCycle(ListNode *head) { if(head==NULL) return NULL; ListNode *fast_no

swift详解之二十二-----------UINavigationController的基本用法和页面传值几种方式

UINavigationController的基本用法和页面传值几种方式 本文介绍UINavigationController基本用法,因为涉及多页面顺便介绍页面传值 1.手写代码创建UINavigationController 手写方式创建很简单 , 首先创建一个项目 , 默认是从storyboard 加载的.这时候首先去掉默认加载方式 . 然后在AppDelegate.swift 的didFinishLaunchingWithOptions 中创建 代码如下: func applicatio

IOS学习之路十二(UITableView下拉刷新页面)

今天做了一个下拉刷新的demo,主要用到了 实现的开源框架是:https://github.com/enormego/EGOTableViewPullRefresh 实现很简单下载源代码,加压后把 然后拷贝资源文件和EGORefreshTableHeaderView.h和EGORefreshTableHeaderView.m到相依的工程中. 添加QuartzCore.framework组建: 在tableview所在的类中添加如下代码: TableViewController.h [html] 

完美解决 IOS系统safari5.0 浏览器页面布局iframe滚动栏失效问题

在iframe外层包一层div,加入例如以下样式: style="-webkit-overflow-scrolling:touch;overflow:auto;" 代码例如以下: <div  style="width:100%;-webkit-overflow-scrolling:touch;overflow:auto;"><iframe name="main" id="main" src="../

完美解决 IOS系统safari5.0 浏览器页面布局iframe滚动条失效问题,iossafari5.0

在iframe外层包一层div,添加如下样式:style="-webkit-overflow-scrolling:touch;overflow:auto;" 代码如下: <div  style="width:100%;-webkit-overflow-scrolling:touch;overflow:auto;"><iframe name="main" id="main" src="../demo.