django相当于sqlalchemy的sessionmaker

时间:2016-09-02 19:55:53

标签: python django sqlalchemy

我是Django 1.9的新手(同样也是新手),我试图以与sqlite sessionmaker相同的方式填充我的models.py。

这是我的models.py:

的剪辑
@python_2_unicode_compatible
class Location(models.Model):
def __str__(self):
    return self.location_text

location_text = models.CharField(max_length=200)
travel_date = models.DateTimeField('date traveled')


@python_2_unicode_compatible
class Countries(models.Model):
    def __str__(self):
        return self.capitals

    location = models.ForeignKey(Location, on_delete=models.CASCADE)
    capitals = models.CharField(max_length=200)

使用flask和sqlalchemy,我创建了一个新文件,并且能够做到这样的事情:

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from this_app.models import Location, Countries

engine = create_engine("the db")
Base.metadata.bind = engine
DBSession = sessionmaker(bind=engine)
session = DBSession()

loc1 = Location(location_text = "Indonesia")
session.add(loc1)
session.commit()

cap = Countries(
    capitals="Jakarta",
    location=loc1
    )
session.add(cap)
session.commit()

这是如何用django的手机完成的?

2 个答案:

答案 0 :(得分:0)

如果我说得对,你想在一个查询中保存对象。

可以使用bulk_create

完成此操作
  

此方法以有效的方式将提供的对象列表插入到数据库中(通常只有1个查询,无论有多少个对象)

答案 1 :(得分:0)

/topic

就是这样。