小编R M*_*hev的帖子

RefineryCMS:将引导样式应用于导航菜单

我已将Refinery CMS升级到最新版本(2.1.0),其中有一种渲染导航菜单的新方法:

(部分_header.html.erb)

<%= Refinery::Pages::MenuPresenter.new(refinery_menu_pages, self).to_html %>
Run Code Online (Sandbox Code Playgroud)

相同部分的旧版本:

<%= render(:partial => "/refinery/menu", :locals => {
         :dom_id => 'menu',
         :css => 'menu'
       }) %>
Run Code Online (Sandbox Code Playgroud)

我怎样才能使用导航栏添加引导程序样式MenuPresenter

css ruby-on-rails refinerycms twitter-bootstrap

5
推荐指数
1
解决办法
2578
查看次数

将foreign_key值传递给Rails控制器的更好方法

自从我开始深入挖掘形式,联想,哈希,符号以来已经差不多一个星期......但似乎没有你的帮助我无法解决这个难题.

我正在开展一个展示不同画廊内容的项目.基本思想是当用户看到画廊的名称(名称是链接)时能够点击所选择的名称.然后显示属于此库的所有图像.在底部应该有一个链接"在此库中添加图像".

我的模特:

 class Gallery < ActiveRecord::Base
attr_accessible  :name
has_many :pictures 
 end


class Picture < ActiveRecord::Base 
attr_accessible  :image 
belongs_to :gallery
 end
Run Code Online (Sandbox Code Playgroud)

我在gallery_id上为'pictures'表创建了索引.

我的大问题出现在这里,如何将gallery_id传递给控制器​​的动作'new'.正如我在"使用Rails进行敏捷Web开发"中看到的那样,它可能是:
<%= link_to'在这里添加图片...',new_picture_path(:gallery_id => @ gallery.id)%>

在这种情况下似乎是foreign_key:gallery_id在浏览器的URL栏中公开.第二个问题是:gallery_id可用于控制器的"新"功能,但"创建"功能"消失"(导致错误"无法找到没有ID的图库").当我在_form中为图片添加隐藏字段时,问题就消失了,在我的情况下:

<%= form_for(@picture)   do |f| %>
<div class="field"> 
      <%= f.hidden_field :gallery_id , :value=>params[:gallery_id] %>
<%= f.label :image %><br />
<%= f.file_field :image %>
</div>

<div class="actions">
<%= f.submit "Create" %>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)

以下是我在'pictures'控制器中的定义:

def new
@gallery=Gallery.find(params[:gallery_id])
@picture=@gallery.pictures.build 
 end


def create
   @gallery = Gallery.find(params[:gallery_id])  
   @picture = @gallery.pictures.new(params[:picture])
  if @picture.save
     redirect_to(@picture, :notice …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails associations foreign-key-relationship link-to

4
推荐指数
1
解决办法
4401
查看次数

如何在舒适的墨西哥沙发中使用部分?

我想制作一个带有已发布页面标题的导航菜单。在用户手册中,我可以看到我应该在布局中使用的格式:

{{ cms:partial:path/to/partial }}
Run Code Online (Sandbox Code Playgroud)

所以我创建了一个带有名称的部分_navmenu.html.haml并将其放在app/views/目录中。我想我应该像这样引用这个部分:

 {{ cms:partial:app/views/navmenu}}
Run Code Online (Sandbox Code Playgroud)

但我只看到 ActionController 的错误消息:

Missing partial app/views/navbar with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee, :haml]}. Searched in:
* "/Users/qumara/mexicansofa/app/views"  
Run Code Online (Sandbox Code Playgroud)

它似乎在app/views目录中搜索。我想在 Comfy 中的部分是由 Rails 约定引用的(带有下划线前缀)。

堆栈:Ruby on Rails 3.2.14,comfort-mexican-sofa 1.8.4。

我应该如何(从布局)参考舒适墨西哥沙发的部分内容?

任何帮助表示赞赏。

ruby-on-rails content-management-system comfortable-mexican-sofa

2
推荐指数
1
解决办法
1929
查看次数