分类目录归档:Python-Dev

[ Flask配置跨域 ]


使用添加请求头的方法实现

在每次响应的时候, 添加响应头, 配置实现

from flask import Flask, views, jsonify, make_response
from flask_wtf.csrf import generate_csrf

app = Flask(__name__)

# 基础跨域使用请求头实现

class TestView(views.MethodView):
    def get(self):
        data = jsonify({
            "code": 200,
            &qu

< Read more >

[ Django的内置信号 ]


一,模型信号

1. pre_init

pre_init
django.db.models.signals.pre_init
每当你实例化一个 Django 模型时,这个信号都会在模型的 __init__() 方法的开头发出。

用此信号发送的参数:

sender
刚刚创建了一个实例的模型类。
args
传递给 __init__() 的位置参数列表。
kwargs
传递给 __init__() 的关键字参数字典。

2. post_init

post_init
django.db.models.signals.post_init
和 pre_init 一样,但这个是在 __init__() 

< Read more >

[ Flask初始化配置 ]


extensions文件

数据库init

from flask_sqlalchemy import SQLAlchemy
from flask_sqlalchemy.query import Query # baseQuery
from flask_marshmallow import Marshmallow
from flask_migrate import Migrate
from flask import Flask
import click

db = SQLAlchemy()
ma = Marshmallow()
migrate = Migrate()

def init_datab

< Read more >

[ Flask用户user模型 ]


from flask_login import UserMixin
from werkzeug.security import generate_password_hash, check_password_hash
from ..extensions import db
import datetime

class User(db.Model, UserMixin):
    __tablename__ = 'user'
    id = db.Column(db.Integer, primary_key=True, autoincrement=True, comment=&#

< Read more >

[ Flask-form自定义json校验 ]


# coding=utf-8
from flask import request, jsonify, abort
from wtforms import Form
from ...models import User
from ...extensions import db
from ...common.utils.jwt_token import jwt_filter_user
from typing import Literal
from ...common.exception import error_response
# request data 基础验证器


class Reque

< Read more >

[ Flask自定义jwt_token ]


import jwt
import datetime
from flask import request, g
from .http import fail_response
from flask import has_request_context
from functools import wraps
from ...models import User
import re
from typing import Union


JWT_CONFIG: dict[str, Union[str, datetime.timedelta]] = {
    'ACCESS_TIMEOUT&

< Read more >