当前位置: 首页 > news >正文

怎么做网站_中国摄影网官网

怎么做网站_,中国摄影网官网,衡阳网站建设专家,广州seo优化0、前言: ★这部分内容是基于之前Flask学习内容的一个实战项目梳理内容,没有可以直接抄下来跑的代码,是学习了之前Flask基础知识之后,再来看这部分内容,就会对Flask项目开发流程有更清楚的认知,对一些开发细节可以进一步的学习。项目功能,通过Flask制作个人博客。项目架…0、前言: ★这部分内容是基于之前Flask学习内容的一个实战项目梳理内容,没有可以直接抄下来跑的代码,是学习了之前Flask基础知识之后,再来看这部分内容,就会对Flask项目开发流程有更清楚的认知,对一些开发细节可以进一步的学习。项目功能,通过Flask制作个人博客。项目架构:项目分为两部分,第一部分是展示给别人的前端页面,第二部分是展示给自己的后台数据管理页面。该项目是前后端不分离项目在搭建一个项目之前一定要先把数据库设计好,把数据库中的表设计好,表和表之间的关系弄清楚1、项目设计流程: 数据库设计 架构设计 代码实现2、架构设计: 1、由于项目中视图函数可能会有多个,因此最好是通过设计views的python包来管理视图函数,因此在views包中有两个视图函数文件一个是views管理展示给别人的视图函数,views_admin管理展示给自己的后台数据管理的视图函数。2、同理由于该项目需要也设置了models的python包将数据分为前端展示数据(models)和后台数据(models_admin)两部分。做完这两部分修改后,注意在初始化中修改导包,修改app绑定的蓝图,有了两个视图函数文件,就会有两个蓝图,一个蓝图叫blog管理前端页面,一个蓝图叫admin管理博客后台管理系统。3、数据库设计: 1、models中数据表设计:【分类表(1):文章表(N)、相册表】2、models_admin中数据表设计:【用户信息表】 4、项目框架展示 1、注意项目中用到的图片有两种添加方式,图片在数据表中是通过url的方式存储的,添加图片第一种方式是数据服务器,第二种方式是使用静态文件,一般正规公司项目开发都是使用静态文件的方式,通过数据服务器存放图片url。2、因为views和models都分为了两个包,分别存放展示页面与后台管理页面相关内容,所以这两部分的页面和这两部分的数据库是分开的,因此这两部分视图函数也是分开的,功能上互不干预。5、项目主要文件代码展示 1、app# Flask个人博客项目 from App import creat_app app = creat_app() if __name__ == '__main__':app.run(debug=True)2、models# models.py : 模型,数据库'''模型 === 数据库类 —— 表结构类属性 —— 表字段一个对象 —— 表的一行数据 ''' from ..exts import db # 导入db对象就能通过python实现ORM技术,避免了写SQL语句。# 分类数据表 class CategoryModel(db.Model):# 表名__tablename__ = 'tb_category' # 数据迁移就是让模型变成表,ORM就是让类变成模型# 定义表字段id = db.Column(db.Integer, primary_key=True, autoincrement=True)name = db.Column(db.String(30), unique=True)describe = db.Column(db.Text(), default='describe')# 关联外键(可以在分类表中获取对应的所有文章)articles = db.relationship('ArticleModel', backref='category', lazy='dynamic')# 文章数据表 class ArticleModel(db.Model):# 表名__tablename__ = 'tb_article' # 数据迁移就是让模型变成表,ORM就是让类变成模型# 定义表字段id = db.Column(db.Integer, primary_key=True, autoincrement=True)name = db.Column(db.String(30), unique=True)keyword = db.Column(db.String(255), default='keyword')content = db.Column(db.Text(), default='content')img = db.Column(db.Text(), default='img')# 外键category_id = db.Column(db.Integer, db.ForeignKey(CategoryModel.id))# 相册 class PhotoModel(db.Model):# 表名__tablename__ = 'tb_photo'# 定义表字段id = db.Column(db.Integer, primary_key=True, autoincrement=True)url = db.Column(db.Text())name = db.Column(db.String(30), unique=True)describe = db.Column(db.Text(), default='describe')3、models_adminfrom ..exts import db # 导入db对象就能通过python实现ORM技术,避免了写SQL语句。# 模型Model:类 # 必须继承 db.Model User才能从普通的类变成模型 class AdminUserModel(db.Model):# 表名__tablename__ = 'tb_adminuser' # 数据迁移就是让模型变成表,ORM就是让类变成模型# 定义表字段id = db.Column(db.Integer, primary_key=True, autoincrement=True)name = db.Column(db.String(30), unique=True)passwd = db.Column(db.String(30))# 通过orm技术得到的db,就是用于替代数据库,后面用到数据库相关操作,可以检索。4、views# 在views.py中放路由和视图函数from flask import Blueprint, render_template, request from ..models.models import * #后面是用views来控制数据库的,所以要在views中导入models文件# 蓝图(蓝图可以有多个,方便对路径进行区分) blog = Blueprint('blog', __name__)# 博客首页 @blog.route('/') @blog.route('/index/') def index():# 修改首页中“我的相册”当中的6张图,调用photos数据库中前6张图片# 修改首页中“文章分类”# 修改首页中“iKun推荐”# 修改首页中右侧的文章photos = PhotoModel.query.limit(6)categories = CategoryModel.query.all()articles = ArticleModel.query.all()commend_arc = articles[:4]return render_template('home/index.html',photos=photos,categories=categories,articles=commend_arc,arts = articles)# 我的相册 @blog.route('/photos/') def blog_photos():photos = PhotoModel.query.all()return render_template('home/photos.html', photos = photos)# 我的日记 @blog.route('/article/') def blog_aritcle():articles = ArticleModel.query.all()categories = CategoryModel.query.all()return render_template('home/article.html', articles = articles, categories = categories)# 关于我 @blog.route('/about/') def blog_about():photos1 = PhotoModel.query.all()categories = CategoryModel.query.all()photos = photos1[:6]return render_template('home/about.html', photos = photos, categories = categories)4、views_admin# 在views.py中放路由和视图函数from flask import Blueprint, render_template, request, redirect, jsonify from ..models.models_admin import * #后面是用views来控制数据库的,所以要在views中导入models文件 from ..models
http://www.tj-hxxt.cn/news/131629.html

相关文章:

  • 绍兴企业自助建站网站 定制
  • 免费建立个人网站的哪些平台好如何做图让网站的图更清晰
  • 做公司简介的开源网站厦门网站搜索优化
  • 我们公司想做个网站新网站开发
  • 网站推广代理手机网站优化
  • 网站统计分析平台天津网页制作网页报价
  • 英文网站怎么做301跳转wordpress返回件
  • 网站放在服务器上厦门装修公司网站建设
  • 网站备案帐号app交互设计
  • 网站规划内容方案cc攻击wordpress网页
  • 个人网站怎么做详情页网站规划和建设方案
  • 无锡企业网站制作策划网页制作公司是做什么的
  • 大连建设监察执法网站郑州仿站模板网站建设
  • 黑蜘蛛网站seo计费系统登录
  • 做网站获取ip大庆工程建设公司网站
  • 有教人做衣服的网站全球最热门网站
  • 免费个人网站域名注册软件工程师工资高吗
  • 企业网站本身应该就是企业( )的一部分公司网站做优化
  • 建站计划书怎么查百度收录网站
  • 竹子建站教程福州网站开发风格
  • 网站建设经wordpress自动化框架
  • 孙红雷做的二手车网站济南 网站建设公司 医疗
  • 辉玲建设集团有限公司网站常熟建设局网站
  • 网站漂浮代码中国企业500强招聘
  • 在婚恋网站上做红娘怎么样帝国做网站
  • 温州快速网站建设排名网站手机版排名seo
  • 南京网站制作招聘开发html网页的软件有哪些
  • 服务器iis做网站wordpress一键安装教程
  • 什么网站是solr做的wordpress推广系统
  • 美食网站建设的时间进度表天津人事考试网