2

メリークリスマス!

私はRuby on Railsが初めてで、まだいくつかのことについて少し混乱しています:

新しいコントローラーを作成する必要があるのはいつですか?

単一の検索ボックスを備えたアプリを作成し、すべての記事を検索したいと考えています。スタートページ (検索ボックス) と検索用にコントローラーを作成する必要がありますか? 静的ページのコントローラーを作成する必要がありますか?

管理インターフェイス gem を使用するか、独自に作成する必要がありますか?

通常のユーザーは、管理者だけが記事を作成できるようになりました。管理インターフェースの gem のいずれかを使用するか、独自に作成する必要がありますか?

4

3 に答える 3

2

Ruby on Rails はまさに MVC であり、コントローラーがモデルをビューに接続することを意味します。したがって、一般的には、よりリソース指向の考え方をすることをお勧めします。見つけたり提示したいリソースごとに、コントローラーを作成します。あなたの場合、次のようなものです:

  • ArticlesController: 検索ボックス付きのメイン ビュー
  • PagesController: 静的ページの場合、erb/haml が必要な場合
  • admin/ArticlesController: 記事の管理のため

これで、完全に静的なページをpublicフォルダーの下に配置することもできます。ページに動的な情報 (記事の総数など) が必要でない限り、コントローラーは必要ありません。

検索ボックスに関しては、これはインデックス ページの単なるパラメーターです。たとえば、インデックスで最新の 10 件の記事を表示し、ある用語で検索すると、関連する記事を表示しますが、同じコントローラーと同じアクションを使用します。

管理インターフェイスに関して: はい、rails_adminactive_adminなどの gem を使用すると、すぐに使い始めることができます。だから必ずそうする。しかし、もちろん、これらの gem は非常に一般的なものであり、ニーズに完全には合わない可能性があります。その場合は、後でいつでも簡単に元に戻すことができます。

HTH。

于 2012-12-26T14:10:00.123 に答える
2

Ruby on Rails は MVC フレームワークに従います。コントローラーはアクションを含むクラスであるため、Web サイトが提供するすべての機能に対してアクションを追加する必要があります。技術的には、すべてのアクションを 1 つのコントローラーに含めることもできますが、それはひどいことなので、ルートとコードをより適切な方法で整理するために、通常は別のコントローラーを作成します。 コントローラーの Rails ガイドに従ってください。

admin インターフェースの gem には、 devisecancanを使用できます。どちらも非常に信頼性が高く、十分にテストされています。

于 2012-12-26T13:32:13.813 に答える
1

メリークリスマス!

Khaled が Rails が MVC アーキテクチャであることを示唆したように、各ページのコントローラーを持つことは常に良いことです。今のところ静的なページを持っているかもしれませんが、サイトを動的なものにしようとしている場合、特定のビューページのメソッドをどこに追加するかについて混乱するでしょう.

一般的には、ゼロから作成するよりも gem を使用する方が適切です。このリンクを調べると、devise と cancan を twitter ブートストラップ (ビュー用) で使用する方法が説明されています。ただし、Rails を学習する予定がある場合は、何が起こっているかを把握できるので、ゼロから学習することをお勧めします。ほとんどのタスクをスクラッチで行うこのチュートリアルを見ることができます。

Railsを楽しもう!!

于 2012-12-26T13:52:41.023 に答える