1

Google グループで同じ質問が議論されているのを見つけましたが、それが参照している FAQ ページは死んでおり、最終的な回答はケース固有のようです。

4

1 に答える 1

1

これは非常に単純であることがわかりました。Google グループのスレッド に記載されている解決策に従って、Rails コンソールを使用しました。今後の参考のために、新しいページ パーツを追加し、既存のすべてのページに適用するための完全なルーチンを次に示します。

最初に、リファイナリ ページ構成ファイルに新しいページ ページを追加します。これについては、Refinery docsで詳しく説明しています。この例では、「epigraph」というページ パーツを追加します。

  # Configure global page default parts
  config.default_parts =  ["Body", "Side Body", "Epigraph"]

  # Configure whether to allow adding new page parts
  config.new_page_parts = true

次に、ビュー ファイルを更新して (app\views\refinery\pages\show.html.erbデフォルトを使用している場合)、新しいページ パーツを含めます。私の場合:

   <div class="epigraph">
      <%= raw @page.content_for(:epigraph) %>
   </div>

次に、rails コンソールから、追加する新しいページ パーツごとにこの map コマンドを実行します。私の例では:

Refinery::Page.all.map {|p| p.parts.create(:title => "Epigraph", :position => 2) unless p.parts.exists?(:title => "Epigraph") }

position パラメーターは、編集ページのタブのどこに配置するかを指定し、0 からカウントすると想定していますが、確実ではありません。

于 2013-07-25T21:52:25.970 に答える