2017-08-06 4 views
-1

「人物」というクラス「人物」のインスタンスの開始から始まるウェブサイトを作ったとします。Flaskでオブジェクトインスタンスを追跡する方法は?

「人」をデータベースに保存する前に、別のhtmlページを使用して属性の一部を操作したいとします。

私はFlask内のインスタンスを追跡する方法を理解していません。どのように私はページ間を移動中にインスタンスを追跡するようにFlaskに指示するのですか?

はapplication.py以内に、この簡単な例を参照してください。

from flask import .... 

from flask_sqlalchemy import SQLAlchemy 

app = Flask(__name__) 

# database stuff deleted to keep it short 

class Person(db.Model): 

    __tablename__ = "persons" 
    id = db.Column(db.Integer, primary_key=True) 
    name = db.Column(db.Text) 
    nickname = db.Column(db.Text) 

    def __init__(self, name, nickname): 
     self.name = name 
     self.nickname = nickname 
     self.age 

    def set_age(self,age): 
     self.age = age 

@app.route("/") 
def index(): 
    return render_template("index.html") 

@app.route("/register", methods=["POST"]) 
def register(): 
    if request.form["name"] == "" or request.form["nickname"] == "": 
     return render_template("failure.html") 
    person = Person(request.form["name"], request.form["nickname"]) 
    db.session.add(person) 
    db.session.commit() 
    return render_template("add_age.html", person = person) 

@app.route("/add_age") 
def add_age(): 
    age = 23 
    person.set_age = age 
    return redirect(url_for("index")) 

だから私は、この例では別のページから「年齢」属性を編集したいです。

+0

もう少し詳しく説明してください。それはあなたを助けるのに十分ではありません。人物の場合は – Nabin

+0

、flask_loginはcurrent_userを使用して確認してください。その後、セッションの仕組みをチェックしてください。 – lciamp

答えて

1

私は本当にあなたの質問をundestandすることはありませんが、あなたはFlaskのアプリケーションコンテキストと要求コンテキストの動作を知る必要があります。 http://flask.pocoo.org/docs/0.12/quickstart/#sessionsをチェックして、ブラウザのクッキーにデータを保存し、すべてのビューからアクセスします。

関連する問題