Flask和Django框架中自定義模型類的表名、父類相關問題分析
本文實例分析了Flask和Django框架中自定義模型類的表名、父類相關問題。分享給大家供大家參考,具體如下:
一. Flask和Django中定義表名(執(zhí)行遷移后生成)的方式和flask是不同的:
1. Django中表名的定義方式,以代碼為例說明
class User(AbstractUser): # 繼承自認證系統(tǒng)模型類 """用戶模型類""" mobile = modles.CharField(max_length=11, mix_length = 11, uniqe=True, verbose_name='手機號') class Meta: db_table = 'tb_users' # 定義數(shù)據(jù)庫中表名 , 如果不定義Django會生成默認固定格式表名 verbose_name = 'tb_table' # 定義后臺管理中類名 verbose_naem_plural = vervose_name # 定義后臺管理中類
模型類中屬性和修改類中verbose_name = ' ###'
均是用來在后臺管理中顯示的名稱
2. Flask中表名的定義方式,以代碼為例說明
from flask import Flask from flask_sqlalchemy import SQLAlchemy from settings import Config app = Flask(__name__) app.config.from_object(Config) db = SQLAlchemy(app) # 自定義模型類:一方 calss Movie(db.Model): # 必須繼承自db.Model __tablename__ = 'movies' # 定義數(shù)據(jù)庫中表名 id = db.Column(db.Integer,primary_key=True) name = db.Column(db.String(64),unique=True) # 一對多的關系模型中,一方定義關系,us給一方使用,實現(xiàn)一對多的查詢,backref給多方使用,實現(xiàn)多對一的查詢. us = db.relationship('Role', backref='movie') def __repr__(self): return 'Movie:%s' % self.name # 自定義模型類:多方 class Role(db.Model): __tablename__ = 'roles' # 如果不定義表名,flask會生成默認固定格式表名. id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(64), unique=True, index=True) email = db.Column(db.String(64),unique=True) password = db.Column(db.String(64)) movie_id = db.Column(db.Integer, db.ForeignKey('movie.id')) # 多方定義外鍵,指向一方主鍵 def __repr__(self): return 'Role:%s' % self.name if __name__ == '__main__': db.drop_all() db.cteate_all() app.run()
二. Flask和Django中父類問題
在Django和Flask中,均有框架已封裝好的模型類,而且固定了自定義的模型類必須繼承自框架已封裝好的模型類作為其父類.
更多關于Python相關內容可查看本站專題:《Python入門與進階經(jīng)典教程》、《Python數(shù)據(jù)結構與算法教程》、《Python函數(shù)使用技巧總結》、《Python字符串操作技巧匯總》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
- Docker部署Flask應用的實現(xiàn)步驟
- flask應用部署到服務器的方法
- 用uWSGI和Nginx部署Flask項目的方法示例
- 使用Docker部署Nginx+Flask+Mongo的應用
- CentOS7部署Flask(Apache、mod_wsgi、Python36、venv)
- Python基于Flask框架配置依賴包信息的項目遷移部署
- CentOS 部署 flask項目的方法
- centos 7.0 使用Nginx部署flask應用教程
- 阿里云部署Ubuntu 1.4 Flask + WSGI + Nginx 詳解
- 在DigitalOcean的服務器上部署flaskblog應用
- 在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
- 在Docker上部署Python的Flask框架的教程
- 如何使用flask將模型部署為服務
相關文章
對python PLT中的image和skimage處理圖片方法詳解
今天小編就為大家分享一篇對python PLT中的image和skimage處理圖片方法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01jupyter notebook引用from pyecharts.charts import Bar運行報錯
這篇文章主要介紹了jupyter notebook引用from pyecharts.charts import Bar運行報錯,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04Python requests HTTP驗證登錄實現(xiàn)流程
這篇文章主要介紹了Python requests HTTP驗證登錄實現(xiàn)流程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-11-11python通過TimedRotatingFileHandler按時間切割日志
這篇文章主要介紹了python通過TimedRotatingFileHandler按時間切割日志的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-07-07如何通過雪花算法用Python實現(xiàn)一個簡單的發(fā)號器
這篇文章主要介紹了如何通過雪花算法用Python實現(xiàn)一個簡單的發(fā)號器,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-07Python Tornado 實現(xiàn)SSE服務端主動推送方案
SSE是Server-Sent Events 的簡稱,是一種服務器端到客戶端(瀏覽器)的單項消息推送,本文主要探索兩個方面的實踐一個是客戶端發(fā)送請求,服務端的返回是分多次進行傳輸?shù)?直到傳輸完成,這種情況下請求結束后,考慮關閉SSE,所以這種連接可以認為是暫時的,感興趣的朋友一起看看吧2024-01-01Win10環(huán)境python3.7安裝dlib模塊趟過的坑
這篇文章主要介紹了Win10環(huán)境python3.7安裝dlib模塊趟過的坑,本文圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-08-08解決selenium+Headless Chrome實現(xiàn)不彈出瀏覽器自動化登錄的問題
這篇文章主要介紹了解決selenium+Headless Chrome實現(xiàn)不彈出瀏覽器自動化登錄的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-01-01