標籤:sql str arm __init__ 就會 class config from primary
一: __init__.py作用:
__init__.py 檔案的作用是將檔案夾變為一個Python模組,Python 中的每個模組的包中,都有__init__.py 檔案。通常__init__.py 檔案為空白,但是我們還可以為它增加其他的功能。我們在匯入一個包時,實際上是匯入了它的__init__.py檔案。這樣我們可以在__init__.py檔案中大量匯入我們所需要的模組,而不再需要一個一個的匯入。
__init__.py:
from flask import Flask, url_for, request, redirect, render_templatefrom flask_sqlalchemy import SQLAlchemyapp = Flask(__name__)app.config.from_object(‘config‘) // 載入配置db = SQLAlchemy(app) // from app import models,views
models.py
__tablename__: 表名稱。
__repr__:Python中這個_repr_函數,對應repr(object)這個函數,返回一個可以用來表示對象的可列印字串. 可以Print出對象
from app import db #db是在app/__init__.py產生的關聯後的SQLAlchemy執行個體class User(db.Model): __tablename__ = ‘users‘ id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(80), unique=True) email = db.Column(db.String(320), unique=True) password = db.Column(db.String(32), nullable=False) def __repr__(self): return ‘<User %r>‘ % self.usernameclass Admin(db.Model): __tablename__ = ‘admins‘ id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(80), unique=True) email = db.Column(db.String(320), unique=True) password = db.Column(db.String(32), nullable=False) def __repr__(self): return ‘<User %r>‘ % self.username
create_db.py
create_all: 這個函數會找到tables,然後串連DB,再然後建立表。
from app import dbdb.create_all()
用命令列執行python create_db.py; 或者 在pycharm中 直接,右鍵create_db.py就會建立表。
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
三 Flask+ MySQL 資料庫操作