私は日付フィールドを持つデータベースにオブジェクトを持っていますが、時にはそれがnilになることはありません。私は文字列の値としてこれを表示することができますビュー内の方法です。多分、TBAのような何か?日付を使用しているときに、ゼロ値で何を行うことができますか?
答えて
<%= @event.date || "TBA" %>
とする必要があります。
あなたのコメントに応じて、はい、モデルでこれを行うことができますが、それは悪い考えです。どうして?
まず、データの表示については、その理由からビューに属しています。
第2に、それは物事を壊す可能性があります。あなたがモデルでそれをした場合、@event.date
は時には日付と時には文字列を返すことがあります。 @event.date.hour
とdate
をと呼んでいたらどうなりますか?あなたはエラーが発生します。唯一の修正点はどこでもそれを確認することです。恐ろしいことです。
あなたが本当にそれをあなたがこのような何かを見ることができるapplication_helper.rb
でのヘルパーメソッドを作成することができます多くのことをやってしようとしている場合:
def date_or_tba(date)
date || "TBA"
end
あなたは、あなたのビューで書くことができます:
<%= date_or_tba @event.date %>
を
文字列「TBA」の使用を1つの場所に限定することは、タイピングはそれほど重要ではありませんが、それを変更する必要がある場合(例えば18の目的など)は意味がありません。本当に簡単。
素晴らしいです。それはまさに私が後にしていることです。モデルでこれを行う方法はありますか?@ event.dateをどこにでも呼び出すと、どこにでも "TBA"として表示されますか? – Synthesezia
あなたはそうかもしれませんが、私はそれを強く勧告します。私は私の答えで詳しく説明します。 – Russell
OK、これはなぜ今は悪い考えです。ヘルパーを追加すると、行く方法のように思えます。ありがとう! – Synthesezia
- 1. 日付にNull値を渡すことができません
- 2. Javaでヒープオーバーフローが発生しているときに、何がメモリを使用しているかをどのように知ることができますか?
- 3. onBlurイベントでTextBoxの日付チェックを行うことはできますか?
- 4. 私はObjective-Cで次を使用して、今日の日付を取得することができるよ
- 5. 後で使用できるように日付を保存しようと苦労しています
- 6. sqlite3で日付をフォーマットすることはできますか?
- 7. 日付フィールドに「デフォルトを使用」にロールバックすることはできません
- 8. UIAnimationを使用してこれを行うことはできますか?
- 9. ブラウザがjqueryを使用しているときにフォーム値を「記憶」できるようにしますか?
- 10. SAPUI5 - 日付ピッカーを設定することができます
- 11. super()を使用したときに何が起きているのですか
- 12. aspnet_regsqlを実行しているときに何が起こるのですか?
- 13. ManualResetEventを使用してブール値を代用することができます
- 14. Node.jsがJavascriptエンジンとしてRhinoを使用できるようにすることはできますか?
- 15. ログインしていないときにtt_newsアーカイブの日付を変更することはできません
- 16. エンドユーザーがJavaScriptを使用してイベントをトリガーできないようにすることはできますか?
- 17. モジュラスを使用しているときにゼロ除算
- 18. カラム名を日付として指定することはできません
- 19. JOINキーワードを使用して結合を行うことはできますか?
- 20. Apigeeを使用してFacebookのバッチリクエストを行うことはできますか?
- 21. どのようにしてdateTimePickerの日付を変数に入れることができますか?
- 22. AJAXを使用してPOSTリクエストを行うことができません
- 23. CopyFromRecordsetを実行しているときに文字列ではない日付として日付を扱うためにExcelを取得する方法
- 24. tolua ++を使用しているときに、どのようにしてluaに戻り値の所有権を与えることができますか?
- 25. 私は日付が実際の日を超えることはできません、と私は別の日の間であることをどのように制御できるように制御することができますどのように、私は自分のフォームの日付を選択する日付ピッカーを使用しています日付
- 26. Pandas DataFrame.sort()を使用しているときに、実際に行の番号を変更できるようにすることはできますか?
- 27. どのようにして2つの日付間の時間差を得ることができますか?
- 28. telnetでsocketを使用しているときにECHOを無効にすることはできますか?
- 29. バッチプログラムはこれをCSVに対して行うことができますか?
- 30. INET_NTOAを使用して行をエコーすることができません
<%= [email protected]? ? @日: "TBA"%> –