
Django シグナル
組み込みシグナル、pre_save、post_save、pre_delete、カスタムシグナル、receiver、シグナルのベストプラクティス
18 面接問題·
Mid-Level
1Django におけるシグナルとは何ですか?
1
Django におけるシグナルとは何ですか?
回答
シグナルは、フレームワーク内の別の場所で特定のアクションが発生したときに、アプリケーションの特定の部分に通知できるようにするメカニズムです。シグナルにより、イベントの送信側とそのイベントに反応する receiver の間を疎結合にできます。Django は、モデル操作のために pre_save、post_save、pre_delete、post_delete などの組み込みシグナルを複数提供しています。
2オブジェクトがデータベースに保存される直前に送出されるシグナルはどれですか?
2
オブジェクトがデータベースに保存される直前に送出されるシグナルはどれですか?
回答
pre_save シグナルは、モデルの save() メソッドが実行される前に送出されます。これにより、派生値の計算やデータの正規化など、保存前にインスタンスへ変更を加えることができます。このシグナルはオブジェクトの作成時でも更新時でも呼び出されるため便利です。
3receiver 関数を Django のシグナルに接続するために使用すべきデコレータはどれですか?
3
receiver 関数を Django のシグナルに接続するために使用すべきデコレータはどれですか?
回答
django.dispatch の @receiver デコレータを使うと、関数を宣言的にシグナルへ接続できます。リッスンするシグナルをパラメータとして受け取り、オプションで送信元をフィルタするための sender も指定できます。この方法は connect() メソッドより読みやすく、コードの保守を容易にします。
4
post_save シグナルのどの引数で、作成と更新を区別できますか?
5
Django アプリケーションでは、シグナルの receiver のコードをどこに置くことが推奨されますか?
+15 面接問題
その他のDjango面接トピック
Pythonの基礎
Junior
25問Python オブジェクト指向
Junior
20問Django の基礎
Junior
20問Django Models - 基礎
Junior
22問Django ビュー
Junior
20問Django テンプレート
Junior
18問Django フォーム
Mid-Level
22問高度なQuerySet
Mid-Level
25問Django 認証
Mid-Level
22問Django ミドルウェア
Mid-Level
18問Django Admin
Mid-Level
20問Django REST Framework
Mid-Level
30問ファイルアップロード
Mid-Level
20問Django キャッシュ
Mid-Level
20問Django セッション
Mid-Level
18問Django のメール
Mid-Level
18問Django のテスト
Mid-Level
22問Django のセキュリティ
Mid-Level
22問Django のデプロイ
Mid-Level
24問Django ORM 上級
Senior
28問Django のパフォーマンス
Senior
24問Django & Celery
Senior
22問Django Channels
Senior
24問Django & GraphQL
Senior
24問Django & Docker
Senior
20問マイクロサービスエコシステムにおけるDjango
Senior
24問カスタムDjangoコマンド
Senior
18問Django の国際化
Senior
20問Django デザインパターン
Senior
24問Django Async と ASGI
Senior
26問Settings と本番環境の設定
Senior
22問オブザーバビリティとモニタリング
Senior
24問