Python create()方法中的Django,什么是';self."为"写"&"x27;对于
在下面的代码中,代码Python create()方法中的Django,什么是';self."为"写"&"x27;对于,python,django,Python,Django,在下面的代码中,代码self.\u for\u write是什么意思 def create(self, **kwargs): """ Create a new object with the given kwargs, saving it to the database and returning the created object. """ obj = self.model(**kwargs) self._for_write = True
self.\u for\u write
是什么意思
def create(self, **kwargs):
"""
Create a new object with the given kwargs, saving it to the database
and returning the created object.
"""
obj = self.model(**kwargs)
self._for_write = True
obj.save(force_insert=True, using=self.db)
return obj
基于
django.db.models.query.QuerySet.db
@property
def db(self):
"""Return the database used if this query is executed now."""
if self._for_write:
return self._db or router.db_for_write(self.model, **self._hints)
return self._db or router.db_for_read(self.model, **self._hints)
这意味着当您的
QuerySet
具有self.\u for_write==True
时,它将使用db\u for_write
触发您的查询。有关更多详细信息,请阅读它正在使用QuerySet类的未记录属性。看见