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类的未记录属性。看见