質問

私はレールズエンジンに取り組んでおり、このラインを置くジェネレーターを書き込もうとしています

do_stuff (foo)

最後の声明として config/routes.rb, 、ファイルの構文を破ることなく。

具体的には、私の場合 config/routes.rb 現在このように見えます

Rails.application.routes.draw do
    blah
    more blah
end

ジェネレーターを実行した後、私は欲しいです config/routes.rb このように見えること

Rails.application.routes.draw do
    blah
    more blah
    do_stuff (foo) # injected line
end

私は何を見ました ActiveAdminはそうします, 、しかし、ブランケットの最後の行ルールを作成することはできません。どんな助けも大歓迎です。

役に立ちましたか?

解決

私はそれをテストしませんでしたが、ActiveAdminジェネレーターであなたがリンクしたものから、次のように機能するかもしれません。

inject_into_file "config/routes.rb", "  do_stuff(foo)\n", :before => /^end/

これにより、コードの直前にコードを挿入する必要があります end 行の先頭から始まるトークン。これは、適切にフォーマットされたルートファイルでのみ機能します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top