プログラミングの質問でなくて申し訳ありませんが、クラス オブジェクトをイントロスペクトしようとしたときに、これが私の目に留まりました。
私はこれを見つけました
{'user_id': 1, '_state': <django.db.models.base.ModelState object at 0x10ac2a750>, 'id': 2, 'playlist_id': 8}
の役割とは_state何ModelStateですか?
プログラミングの質問でなくて申し訳ありませんが、クラス オブジェクトをイントロスペクトしようとしたときに、これが私の目に留まりました。
私はこれを見つけました
{'user_id': 1, '_state': <django.db.models.base.ModelState object at 0x10ac2a750>, 'id': 2, 'playlist_id': 8}
の役割とは_state何ModelStateですか?
Django ソース コードから、_stateは各 Model インスタンスで定義されたインスタンス変数であり、次のようにModelState定義されているインスタンスです。
class ModelState(object):
"""
A class for storing instance state
"""
def __init__(self, db=None):
self.db = db
# If true, uniqueness validation checks will consider this a new, as-yet-unsaved object.
# Necessary for correct validation of new instances of objects with explicit (non-auto) PKs.
# This impacts validation only; it has no effect on the actual save.
self.adding = True
したがって、基本的に、このインスタンス変数は、Modelインスタンスがすでに に書き込まれたかどうかdb(Django が複数の db バックエンドをサポートしていることを知っている) を知るために使用され、使用済みを保持するためにdb使用されます。このインスタンス変数属性は、モデル インスタンスを保存しaddingた後に false に設定され、ほとんど使用されます。 (上記のコードのコメントとして)主キーが一意であるかどうかを検証するため。