Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from flask import Flask
- from flask_admin import Admin
- from flask_admin.contrib.sqla import ModelView
- from flask.ext.sqlalchemy import SQLAlchemy
- app = Flask(__name__)
- app.config.from_object('config')
- db = SQLAlchemy(app)
- from user.user import mod as user
- from user.models import User as userModel
- app.register_blueprint(user, url_prefix='/user')
- admin = Admin(app, name='My app')
- admin.add_view(ModelView(userModel, db.session, name='userAdmin'))
- from flask import Blueprint, json
- from flask.views import MethodView
- mod = Blueprint('user', __name__)
- class UserAPI(MethodView):
- def get(self):
- users = [
- {'nickname': 'Chan'},
- {'nickname': 'Hzz'},
- ]
- return json.dumps(users)
- mod.add_url_rule('/users/', view_func=UserAPI.as_view('users'))
- from app import db
- class User(db.Model):
- id = db.Column(db.Integer, primary_key=True)
- username = db.Column(db.String(80), unique=True)
- email = db.Column(db.String(120), unique=True)
- def __init__(self, username, email):
- self.username = username
- self.email = email
- def __repr__(self):
- return "<User %s>" % self.username
- Traceback (most recent call last):
- File "run.py", line 2, in <module>
- from app import app
- File "/home/chenhj/flask/multiapp/app/__init__.py", line 21, in <module>
- admin.add_view(ModelView(userModel, db.session, name='chj'))
- File "/home/chenhj/.virtualenvs/multiapp/local/lib/python2.7/site-packages/flask_admin/base.py", line 526, in add_view
- self.app.register_blueprint(view.create_blueprint(self))
- File "/home/chenhj/.virtualenvs/multiapp/local/lib/python2.7/site-packages/flask/app.py", line 62, in wrapper_func
- return f(self, *args, **kwargs)
- File "/home/chenhj/.virtualenvs/multiapp/local/lib/python2.7/site-packages/flask/app.py", line 885, in register_blueprint
- (blueprint, self.blueprints[blueprint.name], blueprint.name)
- AssertionError: A blueprint's name collision occurred between <flask.blueprints.Blueprint object at 0x25e5d90> and <flask.blueprints.Blueprint object at 0x21b89d0>. Both share the same name "user". Blueprints that are created on the fly need unique names.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement