本文主要是介绍用Elixir在多个文件用编辑数据库模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
我们可以通过Elixir对SqlAlchemy在多个文件中编辑数据库模型,即在model.py之外,通过专门的文件中来保存数据模型。
举一个例子来说明,我们要在model.py中创建一个类Foo,然后在另外一个文件中创建一个类Bar,这两个类之间有着从Foo到Bar的OnToMany的关系。
model.py
metadata.bind = "sqlite:///test.sqlite"
from bar import *
class Foo(Entity):
name = Field( String(50) )
num = Field( Integer, default = 0 )
bars = OneToMany('Bar')
setup_all(True)
create_all()
bar.py
class Bar(Entity):
name = Field(String(50))
foo = ManyToOne('Foo')
Bar(name = 'abc')
在外部进行调用时,不需要考虑bar.py,直接from model import *即可,或者,也可以写from model import Bar。
需要注意的是,全部的声明都需要在setup_all()前完成,否会出现错误。更多的问题也可以参见 http://elixir.ematia.de/trac/wiki/Recipes/SplittingAModelAcrossMultipleFiles
这篇关于用Elixir在多个文件用编辑数据库模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!