如何访问相关的导轨模型

时间:2013-06-04 18:20:34

标签: ruby-on-rails-3

我有3个模型费用,收入和利润。这些模型属于Estate,因此该地产有一个费用收入和利润。 Estate属于用户,因此用户拥有许多遗产。那么我应该在索引中编写什么并创建Expense,Revenue和Profit控制器的方法所以只显示那些与该特定区域相关联的模型。 (就像设计提供的current_user方法一样。在这种情况下,我用来将遗产与User @estates = Estate.where(:user_id => current_user.id)联系起来)

那么我是否必须创建新的current_expense,current_revenue和current_profit方法?我如何创建它以及在哪里。

1 个答案:

答案 0 :(得分:2)

费用指数html.erb

怎么样?
current_user.estates.each do |estate|
  estate.expenses.each do |expense|
    expense.value
  end
end

对于创建动作我喜欢使用gem simple_form这里是一个railscast:http://railscasts.com/episodes/234-simple-form

这就是我所做的:

new.html.erb

<%= simple_form_for [@estate,@expense] do |f| %>

        <%= f.input :value1 %>
        <%= f.input :value2 %> 

<% end %>

控制器

def create
    respond_to do |format|      
      if @expense.save
        format.html { redirect_to @expense, notice: '@expense was successfully created.' }
      else
        format.html { render action: "new" }
      end
    end
  end