私は「服」というモデルを持っています。私はこれを一枚(一枚の服)にします。デフォルトでは、レールは複数形が織物であると言います。間違いなく、複数形が「服」であれば、より読みやすくなると思います。レールの命名規則を無効にするにはどうすればよいですか?
複数の命名規則をどのように変更するのですか?私はそれをモデルで正しく行うことができますので、何度も何度もやり直す必要はありませんか?これはどのようにルートが処理されるかを変えます(私は安らかなアーキテクチャを使用しています)。
私は「服」というモデルを持っています。私はこれを一枚(一枚の服)にします。デフォルトでは、レールは複数形が織物であると言います。間違いなく、複数形が「服」であれば、より読みやすくなると思います。レールの命名規則を無効にするにはどうすればよいですか?
複数の命名規則をどのように変更するのですか?私はそれをモデルで正しく行うことができますので、何度も何度もやり直す必要はありませんか?これはどのようにルートが処理されるかを変えます(私は安らかなアーキテクチャを使用しています)。
私はRoRの専門家ではありませんが、possible approachが見つかりました。参照サイトから、config/initializers/inflections.rb
ファイル内の変曲ルールを追加することができます。
ActiveSupport::Inflector.inflections do |inflect|
inflect.plural /^(ox)$/i, '\1\2en'
inflect.singular /^(ox)en/i, '\1'
inflect.irregular 'octopus', 'octopi'
inflect.uncountable "equipment"
end
実際には、あなたのカスタム変項はconfig/initializers/inflections.rbにあるはずです –
私のような怠惰な人のために: 'ActiveSupport :: Inflector.inflections do | Inflectorがそれ自身の上にInflectorを見つけられないならば、変えてください –
私はあなたのアプローチが好きです。私が多くの "カスタム"変奏曲を持っていたなら、それらをyamlに保存し、その同じアーカイブにファイルをロードします。 – Aldana
2+、あなたはそれを少し異なっを行う必要がありますあなたは私が最善の解決のためのRubyでは、データベースの複数形に2.2.2 WindowsまたはLinuxを
ActiveRecord::Base.pluralize_table_names = false
がでこれを追加:レール2.3.2と、おそらくのために
# Add new inflection rules using the following format
ActiveSupport::Inflector.inflections do |inflect|
inflect.irregular 'clothing', 'clothes'
end
を停止しようとしている場合は、あなたのenvironment.rb
ファイルされました:
ActiveRecord::Base.pluralize_table_names = false
class Persona < ActiveRecord::Base
end
personas = Persona.all
personas.each do | personita |
print "#{personita.idpersona} #{personita.nombre}\n"
end
p Persona.count
衣服や衣服にモデルを変更する方法はありますか? –
関連:http://stackoverflow.com/q/6178900/1505348 – Lucio