私は、私のレールアプリでbackbone.jsに行くことにしましたが、私は冗長なコーディングをたくさんしていると感じています。私はバックボーンに多くのモデルとテンプレートを用意していますが、これはほぼ同等のレールです。これを処理する宝石はありますか?バックボーンモデルを生成するレールモデルに入れたact_as_backbonemodelのようなものです(機能を追加するためにオーバーライドされる可能性があります)。また、あなたのビューディレクトリにテンプレートを置き、通常のパーシャル/通常のレールビューを再利用することができる、いくつかの種類のレールバックボーンビューの宝石が存在するなら、それは素晴らしいことでしょう。私のアプリケーションをレールとbackbone.jsでさらに乾燥
答えて
私はちょうどビジネスコミュニティプラットフォームxing.comがそのような宝石を造っているという情報を得ました。
はgithubの上のリポジトリを見て: https://github.com/xing/slouchそれはまだ文書化されていないが、私はそれを構築する男と連絡を取るのは簡単であるべきだと思います。
私の知っている最も近い宝石がある:との組み合わせでおそらくhttps://github.com/codebrew/backbone-rails :https://github.com/netzpirat/haml_coffee_assets
これらがリーンJS(またはJSにコンパイル)する必要がありますので、アプリ/ビューにおけるバックボーンテンプレートを持つことは、意味がありません。論理を含む(ほとんど)ファイル。アセットパイプラインを通じてCDNからロードすることを検討する必要があります。
一般的な使用例は、Backboneにフロントデータロジックを処理させ、RailsをAPIとして使用させることです。
バックボーンとRails(ほぼ1年前)を使い始めたとき、私はこのような宝石を望んでいました(私はバックボーンレールを当時使用していました)。当初、バックボーンとレールの間に多くのものが重複しているように見えましたが、開発が進むにつれて、これはルールではなく例外であることがわかりました。特にRailsをAPIとして使用している場合、この種の宝石はプロジェクトの開始時に役立つだけでなく、あまり関係がないかもしれません。
ほとんどのモデルが私たちのRailsリソースと1-1の対応関係をもはや持たないため、これを言います。たとえば、人に関する情報が必要な場合、この情報は多数のリソースの組み合わせから得られ、プライマリ・レコードのデータの大半は除外されます。また、アプリケーションの作成と変更はアプリでは適切ではなく、作成は招待のみで行い、それはまったく別のリソースとして公開されています。
他のリソースは必要ではなく、機能やデータのような小さなサブセットを持っているか、複数のリソースのデータを持っています。
私たちの場合、railsはAPIなので、ビューレイヤに重複はありません。
私は、バックボーンでの作業方法に合ったカスタムジェネレータを作成したり、選択したエディタでいくつかのテンプレートを柔軟性の高いソリューションにすることができます。
組織的には、app/assets/javascriptsディレクトリの下にディレクトリとしてバックボーンを追加し、ここでモデル、ビュー、ルータ、ヘルパーなどのディレクトリを作成しました。これにより、coffeescriptを使用して宝石を必要とせずにバックボーンを書くことができます。
テンプレートに関しては、レンダリングされるすべてのrails viewの部分です(ジャストミーンとジャスミネリゼーションの宝石を使用して、私たちのバックボーンコードをテストしています)。バックボーンはそれらをidで探し、そこから使います。
これが役に立ちます。
- 1. ルート上のレール名前空間を乾燥させる
- 2. 乾燥までのクラス
- 3. このRubyコードの乾燥
- 4. ルビー - メタプログラミング、define_method、乾燥コード
- 5. カピストラーノのレシピを乾燥するには?
- 6. Javascriptの乾燥パターン - OOに機能
- 7. OOPの乾燥原理を守る
- 8. このルビーコードの乾燥方法
- 9. このhttpartyコードを乾燥し、コントローラから出て、モデル
- 10. Rails Wayとは何ですか? (可読性と乾燥性)
- 11. Threaded DelayedJobワーカーがActiveRecord接続プールを乾燥させる
- 12. typescript私はこのコードをもっと乾燥させることができますか?
- 13. これらのテストをもっと乾燥させるにはどうすればいいですか?
- 14. before_action:フェニックスのセットアップ同等の私は、このコントローラーを乾燥させるためにしたいと思い
- 15. WebTestCaseを拡張してSymfony2単体テストをもっと乾燥させる
- 16. 5モデルで書いたhas_attached_fileの乾燥方法
- 17. ジャスミンテストの乾燥中にエラーが発生する
- 18. 乾燥時間の予測(物理システムをシミュレート)?
- 19. 乾燥うちいくつかのコードを
- 20. 複数の連続したループを乾燥する方法
- 21. アーラン:文字列+バイナリ連結をアップ乾燥
- 22. この発電機を乾燥させる方法はありますか?
- 23. この反応/材料のコードをどのように乾燥させることができますか?
- 24. 次のコードをどのように乾燥させることができますか?
- 25. このF#コードをどのように乾燥させることができますか? (Fluent Interface)
- 26. は、任意の周知の方法は、乾燥JSONのためにあるの
- 27. つ以上のそれを乾燥させるためにしようと、SQLのような条件での一つの属性のバインディング
- 28. 私のbackbone.jsは危険にさらされていますか?
- 29. Backbone.js - レールとネストされたコレクションの使用に関する指針
- 30. Rails + Backbone.jsアプリケーションのテスト
最新のrailscastsにはそのようなことは言及されていませんでした。だから私はこの種の宝石がまだ存在しないと仮定します:http://railscasts.com/episodes/325-backbone-on-rails-part-2 – phoet
私はちょうどgithubレポを作成しました。おそらく誰かがこの宝石を開発するのを手伝ってくれるかもしれません。なぜならこれが私の最初のものになるからです。このレポはact_as_backbonemodel – jonepatr