【问题标题】:form not appearing for triple nested resource三重嵌套资源的表单未出现
【发布时间】:2013-06-27 01:24:34
【问题描述】:

我知道资源应该只嵌套一次,但我有两个模型可以深入三重嵌套水域,这使得事情变得比他们需要的更复杂,但我没有看到在这两个模型中避免它的方法案例...所以:

嵌套的工作方式如下:group>navbar>links

我在获取要呈现的链接表单时遇到问题:

- simple_form_for new_group_navbar_link_path(@group, @navbar, @link) do |f|
  %fieldset.well.pleft80.edit
    = f.input :method_name
    = f.input :text
    = f.input :button

  .form-actions
    = f.submit nil, :class => 'btn btn-primary pull-right btn-large'

navbar belongs_to groups and link belongs_to navbar

控制器: 类 LinksController

  def show
  end

  def new
    @link = Link.new
  end

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

    if @link.save
      redirect_to @navbar, notice: 'link was successfully updated.'
     else
     render :new
    end
 end

 def edit
   @image = @link.build_image unless @link.image
 end

  def update
    respond_to do |format|
      if @link.update_attributes(params[:link])
        format.html { redirect_to @navbar, notice: 'link was successfully updated.' }
        format.json { head :no_content }
      else
        format.html { render action: "edit" }
        format.json { render json: @link.errors, status: :unprocessable_entity }
  end
    end
  end

  def destroy
    @link.destroy
    redirect_to navbar_path(@navbar)
  end

  private

  def fetch_group
    @group = Group.find(params[:group_id])
  end
  def fetch_navbar
    @navbar = Navbar.find(params[:navbar_id])
  end
  def fetch_link
    @link = @navbar.links.find(params[:id])
  end
end

我忽略了一些简单的事情吗?

【问题讨论】:

    标签: ruby-on-rails forms


    【解决方案1】:

    直接替换

    - simple_form_for new_group_navbar_link_path(@group, @navbar, @link) do |f|
    

    = simple_form_for new_group_navbar_link_path(@group, @navbar, @link) do |f|
    

    【讨论】:

    • 哈。也许我只是有点累了。谢谢!
    猜你喜欢
    • 2014-12-05
    • 1970-01-01
    • 2015-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-02
    相关资源
    最近更新 更多