国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

做公司網(wǎng)站軟件鄭州百度seo關(guān)鍵詞

做公司網(wǎng)站軟件,鄭州百度seo關(guān)鍵詞,深圳注冊(cè)貿(mào)易公司網(wǎng)上注冊(cè)流程,廣州自助公司建網(wǎng)站0、前言: ★這部分內(nèi)容是基于之前Flask學(xué)習(xí)內(nèi)容的一個(gè)實(shí)戰(zhàn)項(xiàng)目梳理內(nèi)容,沒(méi)有可以直接抄下來(lái)跑的代碼,是學(xué)習(xí)了之前Flask基礎(chǔ)知識(shí)之后,再來(lái)看這部分內(nèi)容,就會(huì)對(duì)Flask項(xiàng)目開發(fā)流程有更清楚的認(rèn)知,對(duì)一些開發(fā)細(xì)節(jié)可以進(jìn)一步的學(xué)習(xí)。項(xiàng)目功能,通過(guò)Flask制作個(gè)人博客。項(xiàng)目架…

0、前言:

  • ★這部分內(nèi)容是基于之前Flask學(xué)習(xí)內(nèi)容的一個(gè)實(shí)戰(zhàn)項(xiàng)目梳理內(nèi)容,沒(méi)有可以直接抄下來(lái)跑的代碼,是學(xué)習(xí)了之前Flask基礎(chǔ)知識(shí)之后,再來(lái)看這部分內(nèi)容,就會(huì)對(duì)Flask項(xiàng)目開發(fā)流程有更清楚的認(rèn)知,對(duì)一些開發(fā)細(xì)節(jié)可以進(jìn)一步的學(xué)習(xí)。
  • 項(xiàng)目功能,通過(guò)Flask制作個(gè)人博客。
  • 項(xiàng)目架構(gòu):項(xiàng)目分為兩部分,第一部分是展示給別人的前端頁(yè)面,第二部分是展示給自己的后臺(tái)數(shù)據(jù)管理頁(yè)面。
  • 該項(xiàng)目是前后端不分離項(xiàng)目
  • 在搭建一個(gè)項(xiàng)目之前一定要先把數(shù)據(jù)庫(kù)設(shè)計(jì)好,把數(shù)據(jù)庫(kù)中的表設(shè)計(jì)好,表和表之間的關(guān)系弄清楚

1、項(xiàng)目設(shè)計(jì)流程:

  • 數(shù)據(jù)庫(kù)設(shè)計(jì) > 架構(gòu)設(shè)計(jì) > 代碼實(shí)現(xiàn)

2、架構(gòu)設(shè)計(jì):

  • 1、由于項(xiàng)目中視圖函數(shù)可能會(huì)有多個(gè),因此最好是通過(guò)設(shè)計(jì)views的python包來(lái)管理視圖函數(shù),因此在views包中有兩個(gè)視圖函數(shù)文件一個(gè)是views管理展示給別人的視圖函數(shù),views_admin管理展示給自己的后臺(tái)數(shù)據(jù)管理的視圖函數(shù)。
  • 2、同理由于該項(xiàng)目需要也設(shè)置了models的python包將數(shù)據(jù)分為前端展示數(shù)據(jù)(models)和后臺(tái)數(shù)據(jù)(models_admin)兩部分。做完這兩部分修改后,注意在初始化中修改導(dǎo)包,修改app綁定的藍(lán)圖,有了兩個(gè)視圖函數(shù)文件,就會(huì)有兩個(gè)藍(lán)圖,一個(gè)藍(lán)圖叫blog管理前端頁(yè)面,一個(gè)藍(lán)圖叫admin管理博客后臺(tái)管理系統(tǒng)。

3、數(shù)據(jù)庫(kù)設(shè)計(jì):

  • 1、models中數(shù)據(jù)表設(shè)計(jì):【分類表(1):文章表(N)、相冊(cè)表】
  • 2、models_admin中數(shù)據(jù)表設(shè)計(jì):【用戶信息表】
    在這里插入圖片描述

4、項(xiàng)目框架展示

在這里插入圖片描述

  • 1、注意項(xiàng)目中用到的圖片有兩種添加方式,圖片在數(shù)據(jù)表中是通過(guò)url的方式存儲(chǔ)的,添加圖片第一種方式是數(shù)據(jù)服務(wù)器,第二種方式是使用靜態(tài)文件,一般正規(guī)公司項(xiàng)目開發(fā)都是使用靜態(tài)文件的方式,通過(guò)數(shù)據(jù)服務(wù)器存放圖片url。
  • 2、因?yàn)関iews和models都分為了兩個(gè)包,分別存放展示頁(yè)面與后臺(tái)管理頁(yè)面相關(guān)內(nèi)容,所以這兩部分的頁(yè)面和這兩部分的數(shù)據(jù)庫(kù)是分開的,因此這兩部分視圖函數(shù)也是分開的,功能上互不干預(yù)。

5、項(xiàng)目主要文件代碼展示

  • 1、app
# Flask個(gè)人博客項(xiàng)目
from App import creat_app
app = creat_app()
if __name__ == '__main__':app.run(debug=True)
  • 2、models
# models.py : 模型,數(shù)據(jù)庫(kù)'''模型      ===      數(shù)據(jù)庫(kù)類        ——>     表結(jié)構(gòu)類屬性     ——>    表字段一個(gè)對(duì)象   ——>    表的一行數(shù)據(jù)
'''
from ..exts import db # 導(dǎo)入db對(duì)象就能通過(guò)python實(shí)現(xiàn)ORM技術(shù),避免了寫SQL語(yǔ)句。# 分類數(shù)據(jù)表
class CategoryModel(db.Model):# 表名__tablename__ = 'tb_category'   # 數(shù)據(jù)遷移就是讓模型變成表,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')# 關(guān)聯(lián)外鍵(可以在分類表中獲取對(duì)應(yīng)的所有文章)articles = db.relationship('ArticleModel', backref='category', lazy='dynamic')# 文章數(shù)據(jù)表
class ArticleModel(db.Model):# 表名__tablename__ = 'tb_article'   # 數(shù)據(jù)遷移就是讓模型變成表,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))# 相冊(cè)
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_admin
from ..exts import db # 導(dǎo)入db對(duì)象就能通過(guò)python實(shí)現(xiàn)ORM技術(shù),避免了寫SQL語(yǔ)句。# 模型Model:類
# 必須繼承 db.Model User才能從普通的類變成模型
class AdminUserModel(db.Model):# 表名__tablename__ = 'tb_adminuser'   # 數(shù)據(jù)遷移就是讓模型變成表,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))# 通過(guò)orm技術(shù)得到的db,就是用于替代數(shù)據(jù)庫(kù),后面用到數(shù)據(jù)庫(kù)相關(guān)操作,可以檢索。
  • 4、views
# 在views.py中放路由和視圖函數(shù)from flask import Blueprint, render_template, request
from ..models.models import * #后面是用views來(lái)控制數(shù)據(jù)庫(kù)的,所以要在views中導(dǎo)入models文件# 藍(lán)圖(藍(lán)圖可以有多個(gè),方便對(duì)路徑進(jìn)行區(qū)分)
blog = Blueprint('blog', __name__)# 博客首頁(yè)
@blog.route('/')
@blog.route('/index/')
def index():# 修改首頁(yè)中“我的相冊(cè)”當(dāng)中的6張圖,調(diào)用photos數(shù)據(jù)庫(kù)中前6張圖片# 修改首頁(yè)中“文章分類”# 修改首頁(yè)中“iKun推薦”# 修改首頁(yè)中右側(cè)的文章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)# 我的相冊(cè)
@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)# 關(guān)于我
@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中放路由和視圖函數(shù)from flask import Blueprint, render_template, request, redirect, jsonify
from ..models.models_admin import * #后面是用views來(lái)控制數(shù)據(jù)庫(kù)的,所以要在views中導(dǎo)入models文件
from ..models
http://aloenet.com.cn/news/34891.html

相關(guān)文章:

  • 建站之星網(wǎng)站模板百度sem認(rèn)證
  • 坪山網(wǎng)站建設(shè)服務(wù)寧波seo關(guān)鍵詞如何優(yōu)化
  • 電子商務(wù)網(wǎng)站開發(fā)設(shè)計(jì)報(bào)告書seo免費(fèi)入門教程
  • 河北省建設(shè)集團(tuán)有限公司網(wǎng)站百度查重免費(fèi)入口
  • 做網(wǎng)站能力介紹模板之家官網(wǎng)
  • wordpress 響應(yīng)式產(chǎn)品展示站微信營(yíng)銷推廣的方式有哪些
  • 寧波網(wǎng)站開發(fā)公司湘潭關(guān)鍵詞優(yōu)化公司
  • 商務(wù)網(wǎng)站欣賞營(yíng)銷管理系統(tǒng)
  • 貴陽(yáng)網(wǎng)站設(shè)計(jì)焊工培訓(xùn)內(nèi)容
  • 網(wǎng)站LOGO透明底色PNG格式怎么做的最新足球賽事
  • 自己做網(wǎng)站還是用別人網(wǎng)站網(wǎng)絡(luò)做推廣公司
  • 建立網(wǎng)站的步驟 實(shí)湖南嵐鴻寧波網(wǎng)站制作與推廣價(jià)格
  • 一級(jí)a做爰片免費(fèi)網(wǎng)站冫百度熱搜電視劇
  • 亳州是網(wǎng)站建設(shè)百度seo霸屏軟件
  • 做網(wǎng)站后端要什么技術(shù)搜索引擎費(fèi)用
  • 煙臺(tái)專業(yè)做網(wǎng)站公司有哪些發(fā)布信息的免費(fèi)平臺(tái)
  • 建站 哪個(gè)網(wǎng)站系統(tǒng)好用四川seo整站優(yōu)化費(fèi)用
  • 成都住房和城鄉(xiāng)建設(shè)部網(wǎng)站天津疫情最新消息
  • 網(wǎng)站建設(shè)套餐是什么百度的關(guān)鍵詞優(yōu)化
  • wordpress 5.0.1編輯器seo外包多少錢
  • 十大網(wǎng)站app軟件下載網(wǎng)絡(luò)營(yíng)銷與策劃試題及答案
  • 做的網(wǎng)站打開慢淮安百度推廣公司
  • 跨境電商亞馬遜seo教程之關(guān)鍵詞是什么
  • 網(wǎng)頁(yè)設(shè)計(jì)職位優(yōu)化大師下載安裝app
  • 四川華泰建設(shè)集團(tuán)網(wǎng)站免費(fèi)做網(wǎng)站網(wǎng)站
  • wordpress 評(píng)論框 提示網(wǎng)頁(yè)優(yōu)化方案
  • 英文網(wǎng)站建設(shè)方法網(wǎng)站怎么收錄到百度
  • 信陽(yáng)網(wǎng)站建設(shè)策劃方案廣東今日最新疫情通報(bào)
  • 酒類網(wǎng)站建設(shè)方案海南seo排名優(yōu)化公司
  • 黃石做網(wǎng)站的公司網(wǎng)絡(luò)營(yíng)銷實(shí)施計(jì)劃