我已经研究了一段时间,在梳理了数十个线程并阅读了许多教程之后,我决定询问我的具体问题。
我对编码没有任何经验,尤其是对于使用Flask开发新手,但是我会尽力尝试解释我的问题和到目前为止的尝试。我也是StackOverflow的新手,所以如果我对这个问题的措辞不正确,请原谅我!
我正在构建一个包含两个方面的应用程序-图片Uber,您可以在其中注册驾驶或乘车。从现在开始,我将这些角色称为“ x”和“ y”。
我不确定创建这两个角色的最佳方法是什么。我曾经使用过flask-login,flask-security和flask-admin,但仍不确定如何实现特定角色。
现在,我已经设置了两个单独的注册表单,分别在/ register(对于用户类型x)和/ signup(对于用户类型y)。这似乎并不理想,但是再次,我不知道该如何构造它。
我正在使用mLab存储我的数据,并且我已经将信息存储在该数据库的2个集合中(出于进一步的目的db.x和db.y),这些信息是从站点以前的结构方式继承而来的
我最初是按照教程来找到注册x类型用户的方法的,但是一直在努力为类型Y添加单独的类别。当我填写 y 的注册表格作为测试时,数据将自动存储在db.x
中我想知道是否有一种方法可以操纵烧瓶登录LoginManager将数据发送到其他数据库?
以供参考:
@login_manager.user_loader
def load_user(user_id):
return User.objects(pk=user_id).first()
这就是我开始设置的内容,但是我不确定我是否朝着正确的方向前进。 (为了便于阅读,我将此处设置的类型更改为x和y)
class x(UserMixin, dbapp.Investors):
meta = {'collection': 'x'}
meta = {'type': 'x'}
email = dbapp.StringField(max_length=30)
password = dbapp.StringField()
role = user_datastore.add_role_to_user(email, 'x')
class y(UserMixin, dbapp.Startups):
meta = {'collection': 'y'}
meta = {'type': 'y'}
category = dbapp.StringField()
description = dbapp.StringField(max_length=150)
location = dbapp.StringField()
image = dbapp.StringField()
email = dbapp.StringField(max_length=30)
password = dbapp.StringField()
role = user_datastore.add_role_to_user(email, 'y')
对于从事过类似项目/遇到过类似问题的人:解决此问题的最佳方法是什么?
基本上:如何将一种类型的用户注册到db.x,将另一种类型的用户注册到db.y?我想将它们分开的原因是匿名用户仍将能够访问db.y中的数据,这将使我的生活变得更加轻松,而不必更改太多现有框架。
提前谢谢! -伊莎贝拉