django のモデルで使用する __init__ 関数を書く
2023-08-21 10:29:51
質問
私は
__init__
関数でオブジェクトを作成しようとしています。
p = User('name','email')
モデルを書くと
def __init__(self, name, email, house_id, password):
models.Model.__init__(self)
self.name = name
self.email = email
これはうまくいって、オブジェクトをデータベースに保存することができます。
User.objects.all()
を呼び出すと、何も表示されません。
__init__
関数を削除しない限り、何も表示されません。何かいい方法はないでしょうか?
どのように解決するのですか?
Django の組み込み機能に依存し、名前付きパラメータを渡すのが最もシンプルな方法でしょう。
p = User(name="Fred", email="[email protected]")
しかし、もしキーストロークを節約することを目的としているのであれば、イニシャライザをいじる代わりに、静的な便利メソッドをクラスに追加することをお勧めします。
# In User class declaration
@classmethod
def create(cls, name, email):
return cls(name=name, email=email)
# Use it
p = User.create("Fred", "[email protected]")
関連
-
[解決済み】Djangoのクエリセットフィルタリングでnot equalを行うにはどうすればよいですか?
-
[解決済み] 関数デコレータを作成し、それらを連鎖させるには?
-
[解決済み] 関数内でグローバル変数を使用する
-
[解決済み] __init__.py は何のためにあるのですか?
-
[解決済み] モジュールの関数名(文字列)を使って、モジュールの関数を呼び出す。
-
[解決済み] Djangoの "slug "とは何ですか?
-
[解決済み] Django のモデルで on_delete は何をするのですか?
-
[解決済み】Djangoでnull=Trueとblank=Trueの違いは何ですか?
-
[解決済み] PythonでのAWS Lambdaのインポートモジュールエラー
-
[解決済み] djangoのQueryDictをPythonのDictに変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] PythonでのAWS Lambdaのインポートモジュールエラー
-
[解決済み] Pythonの要素別タプル演算(sumなど
-
[解決済み] タプルのリストを複数のリストに変換するには?
-
[解決済み] Pythonのインスタンス変数とクラス変数
-
[解決済み] 古いバージョンのPythonにおける辞書のキーの並び順
-
[解決済み] Flask でグローバル変数はスレッドセーフか?リクエスト間でデータを共有するには?
-
[解決済み] CSVデータを処理する際、1行目のデータを無視する方法を教えてください。
-
[解決済み] djangoフレームワークでフォームフィールドから値を取得するには?
-
[解決済み] Flaskで非同期タスクを作る
-
[解決済み] Pythonの文字列の前にあるbという接頭辞は何を意味するのですか?