問題タブ [globalize3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1362 参照

ruby-on-rails - ID のないカテゴリが見つかりませんでした

globalize3 gem を使用してアプリをグローバル化した後、このようなエラーが発生しました。それ以前は正常に機能していました。そのため、すべてのカテゴリを 3 つの異なる言語に翻訳しました。現時点では、そのカテゴリが見つかりません。リンク内でそのカテゴリ名を使用しているためです。したがって、3 つのカテゴリがある場合は、毎回そのカテゴリに対応する必要があります。しかし、そうではありません。これが私のコードです。

私のアプリケーションのレイアウト

私のルートファイル

*製品_コントローラー*

追加のコードが必要な場合は、私に尋ねてください。私はすでに2日間ここで立ち往生しています:(

0 投票する
1 に答える
2526 参照

ruby-on-rails - form_for id と locale パラメータを混在させる

アプリで Globalize3 を動作させようとしています。翻訳したいブログ投稿のおもちゃのプロジェクトがあります。

私のURLは次のようになります:localhost/en/posts localhost/fr/posts

これが私のやり方ですApplicationController

form_for投稿の作成と更新にも同じものを使用しています。ビューコードは次のとおりです。

ページに移動すると正常に動作し/newます。コントローラーコードは次のとおりです。

しかし、投稿を url/en/posts/1/editで編集しようとすると、渡されたパラメータが混在しますform_for。それがエラーメッセージです:

{:action=>"show", :controller=>"posts", :locale=>#, :id=>nil, :format=>nil} に一致するルートがありません。必要なキーがありません: [:locale, :id]

私の質問は次のとおりです。なぜそれが行われ、どうすればthixを修正できますか?


form_for宣言を次のように変更するなど、すでにいくつかのことを試しました。

<%= form_for(@post, url: {action: 'show', id: @post, locale: params[:locale]} ) do |f| %>

私の投稿にupdatenewid

そうです、作成と更新に2つのフォームを使用することを避けることができれば、実際には使用したくありません。これを行う良い方法はありますか?

編集:

ここに私のレーキルートがあります

0 投票する
1 に答える
160 参照

ruby-on-rails - Globalize3 とすべての言語でのオブジェクトの作成

それに属するproduct_typesを持つMenuという名前のモデルがあります。

メニューの作成時に、いくつかのデフォルトの product_types を設定したい:

私はこの定数を持っています:

これで翻訳が作成されるはずですが、現時点では次のようなエラーが表示されます。

「親が保存されていない限り、作成を呼び出すことはできません」

メニューは 3 つの言語 (ユーザーが選択可能) にすることができ、ユーザーにはデフォルトの言語もあります。このデフォルト言語は、オランダ語、英語、またはフランス語です。そのため、オランダ語とフランス語のメニュー言語を使用するオランダ人ユーザーがいる可能性があります。

私も以前に試したコード(エラーメッセージは表示されませんでした)は次のとおりです。

この手順の問題点は次のとおりです。ユーザーのデフォルト言語がオランダ語に設定されていて、メニューの言語もオランダ語に設定されているとします (他の言語はありません)。次に、デフォルトで作成されたタイプが英語で表示されます...

0 投票する
0 に答える
206 参照

ruby-on-rails - Rails 動的フィールドの追加 (多言語)

翻訳用に 2 つのフィールド (タイトル、説明) といくつかのロケール (英語、スウェーデン語) のセットがあります。

ページにアクセスすると、英語の設定フィールドのみが表示されます。ただし、ユーザーは追加の翻訳を提供できる必要があります (必要な場合)。そのために、"globalize3" と "batch_translations" ( https://github.com/fidel/batch_translations ) の gem を使用します。

言語の選択は、ドロップダウン リストのように行われます。言語を選択すると、新しいフィールド セットが以前のセットのすぐ下に表示されます。

問題自体は、Ryan がスクリーンキャストで取り上げたものと似ています: http://railscasts.com/episodes/197-nested-model-form-part-2

ただし、大きな違いが 1 つあります。フォームも翻訳する必要があります。

最初は、すべて問題ないと思っていました。選択したロケールでパーシャルをレンダリングして埋め込む役割を担うコントローラーのリモート アクションにフォーム ビルダー参照を渡すのに問題はありません。

しかし、object_id (Garbage Collector destroy の it) で参照を渡す可能性がないことが判明しました。

次に、次のように、コントローラーで FormBuilder をインスタンス化できることがわかりました。

私がそうすると、次のように、一次フィールドのみが機能します。f.text_field

ただし、globalize3 と batch_translations は nested_attributes を使用しています。

そして、何らかの理由で (view_context が正しくないためだと思います)、システムはエラーをスローします。

この問題の良い解決策はありますか? ありがとう!

0 投票する
1 に答える
394 参照

ruby-on-rails - Globalize と Rails 4: 互換性ステータス

以前の質問(約 2 か月前に尋ねたもの) で、Ruby on Rails をバージョン 3.2.13 から 4.0.0 にアップグレードしようとしましたが、globalize3 ruby​​-gem の互換性のために成功しませんでした。今日、 globalize3 ruby​​-gem の互換性のために成功せずに、アップグレードを再試行しています。

Web で見つけたすべての可能な解決策 ( rails4 ブランチを参照するものも含む) を試しましたが、誰もうまくいきません。前の質問にあるようなエラー出力が表示されます。ただし、ここで読むことができるように、誰か (幸運かもしれません) が互換性の問題を解決したようです。私は「幸運」ではありません.Rails 4によって追加された機能を使用し、globalize3を引き続き使用することを目指しているため、Rails 4とglobalize3を実行して成功した人がいるかどうかを知りたい. もしそうなら、彼/彼女はそれを作るために何を作りましたか?

globalize3 と Rails 4 の互換性ステータスは?


注: また、 githubで問題をオープンしました。

0 投票する
1 に答える
468 参照

ruby-on-rails - Friendly_id-globalize 'find() through' 関連付けは変換テーブルを使用していません

Rails 4 の場合: モデルで直接 find() を使用すると、page_translations テーブルのスラッグを検索するクエリが生成されます。

関連付けを介して検索を使用すると、変換テーブルが使用されません。Friendly_id は代わりに元のテーブルを使用します。

Rails 3.2 (friendly_id 4.0.10、globalize 3.0.0) では、次のように動作します。

https://github.com/norman/friendly_id-globalize/issues/1も参照してください。リポジトリ所有者 @parndt は現在多忙です。したがって、この宝石を機能させるためのヒントは大歓迎です。

0 投票する
1 に答える
251 参照

ruby-on-rails - Globalize、Unicorn、Rails でスタック レベルが深すぎるというエラーが発生するのはなぜですか?

Gemfile のこの行を置き換えると、

これによって:

ここで提案されているように: https://github.com/globalize/globalize、ユニコーンの起動中にこのエラーが発生しました

Unicorn ログ ファイルから

私は特別なことは何もないと思います。これ (以下) を構成して、 pt-BRenに、またはその逆にフォールバックします。これは、新しいグローバル化を使用した開発で機能します (Globalize3 では機能しません)。ただし、本番環境でこれらの行にコメントしましたが、エラーは解決しません。

config/application.rb

config/environment.rb

何かアドバイスはありますか?問題を見つけるためにできるテストをいただければ幸いです。