小编And*_*w C的帖子

accepted_nested_attributes_for with has_many =>:通过选项

我有两个模型,链接和标签,通过第三个link_tags关联.以下代码位于我的链接模型中.

协会:

class Link < ActiveRecord::Base
  has_many :tags, :through => :link_tags
  has_many :link_tags

  accepts_nested_attributes_for :tags, :allow_destroy => :false, 
  :reject_if => proc { |attrs| attrs.all? { |k, v| v.blank? } }
end

class Tag < ActiveRecord::Base
  has_many :links, :through => :link_tags
  has_many :link_tags
end

class LinkTag < ActiveRecord::Base
  belongs_to :link
  belongs_to :tag
end
Run Code Online (Sandbox Code Playgroud)

links_controller动作:

  def new
    @link = @current_user.links.build
    respond_to do |format|
      format.html # new.html.erb
      format.xml  { render :xml => @link }
    end
  end

  def create
    @link = @current_user.links.build(params[:link])

    respond_to do …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails has-many-through nested-attributes

26
推荐指数
3
解决办法
3万
查看次数

after_filter用于例外

是否存在类似于after_filter的东西,如果该操作引发异常,它仍会运行?

我正在使用外部记录器(因为我在Heroku上); 响应头被过滤并记录在after_filter中.如果引发异常,则过滤器不会运行,并且我没有响应头数据的日志.

如果我尝试挂钩到log_error或rescue_action_in_public,响应头将不会完成(因为实际的渲染在这些之后被调用).

是否有另一个我可以覆盖的函数,它将在相同的时间被调用到after_filter,但无论是否抛出异常,它总是会运行?

谢谢!

ruby-on-rails exception filter actioncontroller

12
推荐指数
1
解决办法
3243
查看次数