Railsは初めてですが、プログラミングは初めてです。ケース管理アプリを作成しようとしています。コマンドを実行しています
ruby script/generate scaffold Case casename:string caseid:string
これは問題なく動作しますが、Case は予約語であるため、localhost:3000/Cases を表示しようとするとエラーが発生します
とにかくこれについてはありますか、それとも別の名前を使用する必要がありますか?
前もって感謝します。
Railsは初めてですが、プログラミングは初めてです。ケース管理アプリを作成しようとしています。コマンドを実行しています
ruby script/generate scaffold Case casename:string caseid:string
これは問題なく動作しますが、Case は予約語であるため、localhost:3000/Cases を表示しようとするとエラーが発生します
とにかくこれについてはありますか、それとも別の名前を使用する必要がありますか?
前もって感謝します。
価値がある以上に自分を悲しませることになると思います。個人的には、予約語はできるだけ避けたいと思います。
エラーは単語の使用に固有のものcase
であるため、それでも必要な場合は、デフォルトのビューを次のように変更すると機能します。
<% @cases.each do |case| %>
<tr>
<td><%=h case.casename %></td>
…
に:
<% @cases.each do |c| %>
<tr>
<td><%=h c.casename %></td>
…
これは私が見る古い質問ですが、私はそのような単語の別のスペルを使用しようとします。この例では、ケースのバックエンドで「Kase」を使用できます。もう1つの例は、「トランザクション」の「トランザクション」です。
フロントエンドでこれを処理することに関しては、組み込みのi18nサポート(http://guides.rubyonrails.org/i18n.html)によって作業が簡単になる場合があります。例えば:
# /config/locales/en.yml
en:
helpers:
label:
kase:
name: "Case name"
また、routesファイルで使用するURLを変更するためのトリックがあると思いますが、これまでテストしたことはありません。