1

アプリケーションをモジュール化するのに役立つrailsプラグインを探しています。混乱している基本的な質問がいくつかあります。

Railsプラグインに独自のDBを含めることはできますか?私のアプリケーションは内部使用のためにトラフィックが非常に少ないので、プラグインごとに個別のsqliteDBを使用するというアイデアで問題ありません。--fullを使用しても「railspluginnew」を実行すると、database.ymlが生成されません。作成してrakedb:createを実行すると、sqlitedbは作成されません。

Rails 3.2でRailsプラグインを作成するために利用できる良いチュートリアルはありますか?私が見つけたほとんどは古いもので、現在レールに組み込まれていると思うenginexgemを使用しています。

プラグインをテスト用のスタンドアロンアプリとして実行できますか?つまり、WEBrickを使用できますか?プラグインディレクトリで「railsserver」を実行すると、「エラー:コマンドが認識されません」と表示されます。

それだけだと思います。どうやって始めたらいいのか混乱しています。

4

2 に答える 2

4

移行の作成

Rails ガイドの「Getting Started with Engines」では、エンジンのルート ディレクトリから「rails g model post」を使用するように指示されています。

エンジン入門

これを行うと、db/migrate フォルダーが作成され、その中に移行が含まれます。

$ rails g model post
  invoke  active_record
  create    db/migrate/20120517184738_create_my_engine_posts.rb
  create    app/models/my_engine/post.rb
  invoke    test_unit
  create      test/unit/my_engine/post_test.rb
  create      test/fixtures/my_engine/posts.yml

Rails アプリの場合と同じように、マイグレーションを直接生成することもできます。

$ rails g migration AddMyEngineTable
  invoke  active_record
  create    db/migrate/20120517185241_add_my_engine_table.rb

Rails サーバーの実行

Rails ガイドには、エンジン ディレクトリのルートからではなく、test/dummy から「rails s」を実行することも記載されています。

Rails 3.1 RC5 を扱った件名の ASCIICast から、以前はエンジン/gem のルート ディレクトリから「rails s」を実行できたことがわかります。これはもはや当てはまりません。

3 か月前に Github に投稿された Rails の問題から、エンジンのスコープをダミー アプリのスコープとは別に維持する必要があったようです。

問題 #4894: マウント可能なエンジン Rails ファイル

于 2012-05-17T18:32:34.790 に答える
1

エンジンルートからの短い実行では:

test/dummy/script/rails s
于 2013-03-28T14:52:00.207 に答える