[解決済み] Djangoのvalues()の項目名を変更する方法は?
2022-04-30 08:28:18
質問
のように、ほとんど同じことをしたいのです。 このチケットはdjangoproject.comにあります。 しかし、いくつかの追加的な書式設定があります。このクエリから
>>> MyModel.objects.values('cryptic_value_name')
[{'cryptic_value_name': 1}, {'cryptic_value_name': 2}]
みたいなのが欲しいんです。
>>> MyModel.objects.values(renamed_value='cryptic_value_name')
[{'renamed_value': 1}, {'renamed_value': 2}]
それとも手動で行う必要があるのでしょうか?
解決方法は?
少しハチャメチャな方法ですが、このように
extra
メソッドを使用します。
MyModel.objects.extra(
select={
'renamed_value': 'cryptic_value_name'
}
).values(
'renamed_value'
)
これは基本的に
SELECT cryptic_value_name AS renamed_value
をSQLに追加します。
もう一つの方法は、常にリネームされたバージョンが欲しいが、データベースが暗号のような名前を持っている場合、新しい名前でフィールドの名前を付けますが、その際、以下のように使用します。
db_column
を使用して、データベース内の元の名前を参照します。
関連
-
[解決済み] 2つのフィールド「unique」をカップルとして定義する方法
-
Djangoは、フォームを送信するときに403エラーに遭遇しました。CSRF 検証に失敗しました。
-
[解決済み] Django のモデルで on_delete は何をするのですか?
-
[解決済み] スケジュールされたジョブを設定する?
-
[解決済み] Djangoのテンプレートからsettings.pyの定数にアクセスすることは可能ですか?
-
[解決済み] Django のクエリを値のリストでフィルタリングするにはどうすればよいですか?
-
[解決済み】Djangoでnull=Trueとblank=Trueの違いは何ですか?
-
[解決済み】djangoのビジネスロジックとデータアクセスの分離
-
[解決済み] [Djangoで「一括更新」する方法とは?
-
[解決済み] Django が ManyToMany リレーションシップからオブジェクトを取り除く
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
AttributeError: 'str' オブジェクトには 'decode' という属性がありません。
-
Django2.2エラー - AttributeError: ''str'' オブジェクトに ''decode'' 属性がない。
-
Django QuerySet マルチテーブル結合/条件付きピッキング/マージ
-
[解決済み] Djangoでファイルをアップロードする方法は?[クローズド]。
-
[解決済み] Django テンプレート内で現在の URL を取得する方法は?
-
[解決済み] 保存時に、フィールドが変更されたかどうかを確認するにはどうすればよいですか?
-
[解決済み】Djangoでモデルインスタンスをシリアライズする方法は?
-
[解決済み] Django REST Framework: ModelSerializerに追加フィールドを追加する
-
[解決済み] Django ManyToMany filter()
-
[解決済み] Django: Django のアプリを完全にアンインストールするには?