0

プロジェクト Rails 3.2 には 2 つの言語があります。

I18n.default_locale = :en
LANGUAGES = [
['English',
'en'],
["Español".html_safe, 'es']
]

登録ユーザーは、これらの言語で新しい投稿を作成できます。

私の質問は:

私のポスト アクション インデックスでは、これらの瞬間のユーザーの場合、言語はたとえば:en. 英語の投稿のみをフィルタリングして表示するにはどうすればよいですか、またはこれらの瞬間のユーザーの言語がたとえば:es. スペイン語の投稿のみをフィルタリングして表示するにはどうすればよいですか?

どうもありがとうございました!

4

1 に答える 1

0

これを実現する最善の方法は、投稿テーブルに「言語」列を追加し、i18n.locale をテストして投稿を作成するときにこの属性を設定することだと思います。次に、次のような単純なクエリで投稿をフィルタリングします。

 Post.where("language = ?", "spanish"). 

たとえば、選択フィールドを使用して新しい投稿を作成し、現在のロケールに従ってデフォルトを設定するときに、ユーザーが言語を選択できるようにするのが最善の方法です。

なぜなら、英語のユーザーは、必要に応じてスペイン語の投稿を書くことができるはずですよね?

于 2012-05-01T09:20:56.957 に答える