問題タブ [ember-rails]
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.
ember.js - キャッチされていない TypeError: 未定義のメソッド 'map' を呼び出せません
私は ember-rails master を使用しており、ember ブートストラップ プロジェクトを作成しました。すべてが空で、作成時の状態のままですが、前述の型エラーが発生しています。ルータが入力されたとき。名前空間はわかっていますが、ルーターはわかっていません。誰もこれを見たことがありますか?
完全を期すために、以下にあるものは省略します。
Basis.js:
application.handlebars:
応用
アプリケーション.js
ember.js - EmberルーターのrootURLオプション(キャッチされないエラー:URL'/ admin'に一致するルートがありません)
/admin/プレフィックスで実行される管理システムの構築を開始しようとしています。
これが私のルートファイルです
/ adminに移動すると、次のエラーが発生します。
私はemberjsから始めたばかりで、私のコードはこのシリーズに基づいています
ruby-on-rails - ember-rails gemを使用してHandlebarsJSテンプレートの代替ディレクトリを指定するにはどうすればよいですか?
Railsアプリケーションがあり、フロントエンドでEmberを使用しています。残り火関連のファイルをディレクトリ構造の1つ下のレベルに移動したいのですが、移動すると、テンプレートがレンダリングされなくなります。
アプリケーションのプレーンでバニラな動作バージョンでは、私のディレクトリ構造は次のとおりです。
と:application.js
および:ember-app.js
すべてが正常に動作します。ただし、ember-appファイルとすべてのember javascriptコードを1レベル下に移動したいのですが、移動すると、テンプレートがレンダリングされません。(アプリケーションの一部はEmberを使用しますが、アプリケーション全体は使用しません。アセットパイプラインを介して2つの別々のパスを設定しようとしています。)
必要な構造は次のとおりです。
with:application.js(改訂:'requireember-app'は'require embro / ember-app'になります)
(ember-app.jsは改訂されていません。)
私が言ったように、移動後、テンプレートコンテンツは画面に表示されません。画面上またはコンソールでエラーは発生せず、空のember-applicationだけです。
コンソールでEmber.TEMPLATESを調べると、予想されるすべてのテンプレートが一覧表示されます。さらに、適切なRailsビューのx-handlebarsテンプレートに目的のコンテンツを配置すると、元のディレクトリ構造の場合と同じように、コンテンツが正常にレンダリングされます。
たとえば、apps / views/welcome/index.html...にあります。
...そしてまた行ってもいいです。
しかし、元の構造で行ったように、レールビューを空のままにすると、失敗します。
おそらくember-railsgemで、ハンドルバーテンプレートがapp / Assets / javascripts / templateに存在する必要があるかどうか、そしてこれをオーバーライドする方法があるかどうか疑問に思います。ドキュメントには、templates_rootオプションをアプリケーション構成ブロックに追加することが記載されていますが、これが重要かどうか疑問に思っています。私は少し遊んだことがありますが、まだ運がありません。
何か案は?
アップデート:
私はtemplates_rootオプションで運がないのではないかと心配しています。実験として、新しいシンプルなRailsアプリを作成し、ember-railsブートストラップジェネレーターを使用して起動して実行してみました。すべて順調ですが、スプロケットのインクルードと構成ファイルを適切に変更して、テンプレートフォルダーの名前を変更しようとすると(つまり、app / Assets / javascripts / templates-> app / Assets / javascripts /temple)、私は' m同じ結果が得られます。
templates_rootオプションが何らかの理由で壊れている可能性はありますか?
Ruby 1.9.3、Rails 3.2.11、ember-rails0.10.0を使用しています
ember / ember-rails / handlebarsソースコードのどこを見るべきかへのポインタはありますか?突っつい始めました。
ありがとう!
ruby-on-rails - すべての Ember.js ルートに URL の「プレフィックス」を指定するにはどうすればよいですか?
私は Ember.js を既存の Rails アプリに統合しようとしています。Ember を単一のコントローラー アクションに使用することから始めたいと思いますdashboard#index
。そこから、おそらくコントローラーごとに、サイトの残りの部分を ember アプリケーションに統合することを計画しています。
しかし、Rails ルート ルートの制御を Ember に委譲する準備ができていないため、ember URL の管理に問題があります。
たとえば、Ember を使用せずに、次のルートを Rails で処理したいと考えています。
その間:
Ember アプリケーションをトリガーする必要があります。/dashboard/#/favorites
次に、やなどのさまざまな ember ダッシュボード ルートがあります。dashboard/#/upcoming
アセット パイプラインを介した別の Rails レイアウトとパスが問題なく設定されていますが、ember ルートprefix
が/dashboard/
.
これを設定するきれいな方法はありますか?
ありがとう
ember.js - ember js camelCasevssnake_caseの正しいテンプレート名規則
私はバックエンドとしてrailsを使用してemberjsでアプリを構築しており(ember-rails gemを使用しています)、ハンドルバーテンプレートに名前を付ける正しい方法に苦労しています。正しい規則は何ですか?例えば:
ルート/user_profiles/4/
については、テンプレートをuser_profiles/show.hbs
正しく配置する必要があると思いますか?それともそうすべきuserProfile/show.hbs
ですか?
単純なテンプレートの場合も同じですが、user_menu.hbs
またはuserMenu.hbs
(両方とも私のために機能しています)。ただし、ヘルパーでレンダリングするには、次のことを行う必要があります。
私のApp.UserMenuControllerを正しく使用するには
だから私はどこでもキャメルケースを使うべきですか、それともsnake_caseを使うべきですか?または両方(フォルダーの場合はcamelCase、ファイル名の場合はsnake_case)
残り火のガイドでは、ほとんどが単純な名前であるため、誰かが私にそれを理解するのを手伝ってもらえますかposts
?comments
ruby-on-rails - ember-rails & handlebars: 指定された templateName は 1 つのビューには存在しませんが、他のすべてのビューには存在します
Railsパイプラインを介してHandlebarsアセットをプリコンパイルするember-railsアプリを作成しています。経由ですべてが最新バージョンに更新されますbundle update
。
インデックスをロードすると、(app/views/gigs/index.html.erb)にもかかわらず、ember データはリストにレンダリングされません。
そこで、以下を含む ListGigsView を確認しました (app/assets/javascripts/app/views/gigs/list.js):
templateName がうまく指しているようです (これは、new.js などでも同様です)。それにもかかわらず、ブラウザー コンソール (Google Chrome バージョン 25.0.1364.172) は、次を返し続けます。
Uncaught Error: assertion failed: You specified the templateName app/templates/gigs/list for <App.ListGigsView:ember194>, but it did not exist.
app/assets/javascripts/app/templates/gigs/list.handlebars にあるファイルは次のとおりです。
テンプレートがレンダリングされないのはなぜですか? コンソールで実行Ember.TEMPLATES
すると、他のすべてのビュー テンプレート リンクがそのまま返されます。
しかし、のためのものではありませんlist
。なぜそのテンプレートは AWOL なのですか?
参考までに、ブラウザコンソールに従って次を実行しています。
Ember.VERSION: 1.0.0-rc.1 ember.js:339 Handlebars.VERSION: 1.0.0-rc.3 ember.js:339 jQuery.VERSION: 1.9.1
-編集: index.html.erb の Event ビューへの Handlebars 参照を含めると、そのテンプレートも消えることがわかりました。
なぜこれが起こるのですか?どうすればそれを回避できますか?
ember.js - Ember、ember-data、Railsとの多対多の関係
ember-dataとrailsを使用してEmber.jsで多対多の関係を保存しようとすると問題が発生します。アソシエーションは残り火側では正常に機能しますが、トランザクションをコミットしようとすると、Railsに送信するときに新しいアソシエーションのリストが含まれません。どんな助けでも大歓迎です、私はgithubでこれほど単純なことをするサンプルアプリケーションを見つけようとして髪を引き裂いてきましたが、私はそれを見つけることができないようです。
これが私のEmberコードのダムダウンバージョンです:
フォームの編集:
Railsバックエンド(継承されたリソースとアクティブモデルのシリアライザーgemを使用):
先ほど言ったように、関連付けはEmberで正常に機能しますが、レールは新しい関連付けデータを取得していないようです。Webインスペクターの[XHR]タブを確認すると、次の情報のみが送信されていることがわかります。
ペイロードのリクエスト{"名簿":{"created_at":"2013年3月21日木曜日23:16:02GMT"、 "team_id": "1"}}
そして、何も変更されていないため、204nocontentエラーで返されます。
ember-data - ember-rails の ember-data のバージョンをリビジョン 12 にアップグレードするにはどうすればよいですか?
マスターに更新されたember-railsがあります。
最新のember-dataリビジョン (12)を使用したいのですが、アプリのストア リビジョン番号を 12 に更新するたびに、次のようになります。
次のエラー メッセージが表示されます。
...そして、DS.CURRENT_API_REVISION をチェックアウトすると、11 になります。
gem をリビジョン 12 に取り込む方法はありますか? それとも自分で ember-data をビルドして含まれているバージョンをオーバーライドする必要がありますか?