Почему мой bash не читает аргумент при использовании Python? - PullRequest
0 голосов
/ 05 мая 2018

Я изучаю Flask, следуя Flask Web Development , когда я получаю Глава 5, использую Flask-Migrate, я обнаружил, что моя оболочка (git bash) вообще не читает аргументы.

Когда я ввожу

python index.py db init

Это работает так же, как я не написал аргумент. Какой бы аргумент я ни вводил, оболочка не может его прочитать и просто запускает сервер.

Может кто-нибудь сказать мне, что происходит?

Вот мой index.py, но на самом деле, когда я запускаю примеры кода, оболочка тоже не читает аргументы.

from flask import Flask,render_template,session,redirect,url_for,flash
from flask_bootstrap import Bootstrap
from flask_sqlalchemy import SQLAlchemy
from flask_wtf import FlaskForm
from flask_migrate import Migrate
from wtforms import StringField,SubmitField
from wtforms.validators import DataRequired
import os


class Nameform(FlaskForm):
    name = StringField('What is s your name',validators = [DataRequired()])
    submit = SubmitField('Submit')


basedir = os.path.abspath(os.path.dirname(__file__))

app = Flask(__name__)
app.config['SECRET_KEY'] = 'tell me why'
app.config['SQLALCHEMY_DATABASE_URI'] ='sqlite:///'+os.path.join(basedir,'data.sqlite')
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
bootstrap = Bootstrap(app)



#database


db = SQLAlchemy(app)


class Role(db.Model):
    __tablename__ = 'roles'
    id = db.Column(db.Integer, primary_key = True)
    name = db.Column(db.String(64),unique = True)
    users = db.relationship('User',backref = 'role')
    def __repr__(self):
        return '<Role %r>' % self.name
class User(db.Model):
    __tablename__ = 'users'
    id = db.Column(db.Integer,primary_key = True)
    username = db.Column(db.String(64),unique = True, index = True)
    role_id = db.Column(db.Integer, db.ForeignKey('roles.id'))
    def __repr__(self):
        return '<User %r>' % self.username

#migrate
migrate = Migrate(app,db)



@app.route('/user/<name>')
def user(name):
    return render_template('user.html',name=name)
@app.route('/',methods = ['GET','POST'])
def index():
    name = None
    form = Nameform()
    if form.validate_on_submit():
        user = User.query.filter_by(username = form.name.data).first()
        if user is None:#if no data,add user
            user = User(username = form.name.data)
            db.session.add(user)
            session['known'] = False
        else:
            session['known'] = True
        session['name'] = form.name.data
        return redirect(url_for('index'))
    flash('Hello Everyone')
    return render_template('index.html',form = form , name = session.get('name'),known = session.get('known',False))
#error
@app.errorhandler(404)
def page_not_found(e):
    return render_template('404.html')
@app.errorhandler(500)
def internal_server_error(e):
    return render_template('500.html')
@app.shell_context_processor
def make_shell_context():
    return(dict(db = db,User = User,Role = Role))
#run
if __name__=='__main__':
    app.run(debug=True)

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...