タグ:Ruby on Rails
Joruri CMSに入力フィールドを追加
Joruriというか、Ruby on Railsを始めたばかりのど素人のメモ。
Joruri CMSには残念ながら「カスタムフィールド」という機能が存在しません。
ということで任意の入力フィールドを追加する場合、データベースから操作する必要があります。
ちなみに自分が使っているJoruri CMSのバージョンは「1.3.2」です。
以下、「コンテンツ種別:記事」の、ページ新規作成・編集画面に、「備考」入力フィールドを追加してみた手順です。
- DBの「article_docs」テーブルに「remark」カラムを追加。
カラム名:remark
種別:TEXT
NULL:チェック - app/views/article/admin/docs/_form.html.erb
を編集。
「内容」フィールドの下あたりにこんな感じで追加。<tr> <th colspan="1">備考</th> <td colspan="3"><%= f.text_area :remark, :rows => '3', :class => ' remark ', :style => 'width: 500px;' %></td> </tr>
- apache再起動。(これしないと反映されない)
- app/views/article/public/node/docs/show.html.erb
を編集。
表示させたい部分に、<%= @item.remark %>
と記述する。
- apache再起動。
apacheを再起動させる理由は、そうしないとviewの編集内容が反映されないからですが、キャッシュを削除する方法さえわかれば、わざわざapacheを再起動させる必要はないかと思います。
これについてはまだ調査中。
viewレベルの変更でapache再起動はさすがにしんどい^^;
まだ開始したばかりなので、いろいろと分かってない部分がありますが、なんとか任意のフィールドを追加したり、カスタマイズできそうですね。
【追記 2013/06/27】
キャッシュの削除方法分かりました。
config/environments/production.rb
の
config.cache_classes
config.action_controller.perform_caching
config.action_view.cache_template_loading
をすべてfalseにすると、再起動させる必要が無くなり、viewやcontrollerの更新がすぐに反映されます。
config.cache_classes = false
config.action_controller.perform_caching = false
config.action_view.cache_template_loading = false
こちらのサイトを参考にさせていただきました。
nandani | 2013年06月18日 | コメント(0) | トラックバック(0) | CMS関連 | Ruby関連