2016-03-04 76 views
0

我不確定爲什麼我的繭嵌套表格沒有出現任何幫助,將不勝感激繭寶石不顯示形式 - 軌道4

  • <button><%= link_to_add_association 'add a required skill', f, :requiredskills %></button>作品非常清楚的顯示形式
  • ,但我不清楚這是爲什麼不渲染的形式<%= render 'requiredskill_fields', :f => duty %>
  • 我想要做的就是有一個表格已經顯示nd當用戶點擊add a required skill時會顯示另一個表單。 目前,當用戶點擊add a required skill,顯示 另一種形式 - 主要問題是有一個表格最初顯示 。我假定這<%= render 'requiredskill_fields', :f => duty %>是假設到位形式,但我不確定它爲什麼不工作

用戶/ _form.html.erb

<%= simple_form_for(@user) do |f| %> 
    <%= f.error_notification %> 

    <div class="form-inputs"> 
    <%= f.input :firstname %> 
    <%= f.input :lastname %> 

    <h3>required skills & expertise</h3> 
    <div> 
     <div class="requiredskill_info" id="skill"> 
     <%= f.simple_fields_for :requiredskills do |skill| %> 
      <%= render 'requiredskill_fields', :f => skill %> 
     <% end %> 
     <div class="add_requiredskill"><button><%= link_to_add_association 'add a required skill', f, :requiredskills %></button></div> 
     </div> 
    </div> 
    </div> 

    <div class="form-actions"> 
    <%= f.button :submit %> 
    </div> 
<% end %> 

用戶/ _requiredskill_fields.html。 ERB

<div class="nested-fields"> 
    <%= f.association :category_advert, collection: CategoryAdvert.all, prompt: "select a category" %> 
    <%= f.grouped_collection_select :category_advertskill_id, CategoryAdvert.order(:name), :category_advertskills, :name, :id, :name, {prompt: "Select a category"}, {class: "category_advertskill"} %> 
    <button><%= link_to_remove_association 'remove required skill', f %></button> 
</div> 

users_controller.rb

class UsersController < ApplicationController 
    respond_to :html, :xml, :json 
    before_action :set_user, only: [:show, :edit, :update, :destroy] 

    def index 
    @users = User.all 
    @user = current_user 
    end 

    def show 
    @resume = @user.resume 
    end 

    def edit 
    end 

    def update 
    @user.update(user_params) 
    redirect_to @user 
    end 

    private 
    def set_user 
     @user = User.find(params[:id]) 
    end 

    def user_params 
     params.require(:user).permit(:email, :firstname, :lastname, :city, :category_qualification_id, :category_careerlevel_id, :desiredjob, :category_distance_id, :preferedlocation, :category_notice_id, :category_country_id, :category_positiontype_id, :image, :cvattachment, :hidecv, :jobadvice, :validlicense, :owntransport, :considerrelocation, :preferredlocation, :neednotice, :stratdate, :availabletowork, :category_outsource_id, :category_advertskill_id, :category_age_id, languages_attributes: [:id, :name, :_destroy], requiredskills_attributes: [:id, :name, :category_advert_id, :category_advertskill_id, :category_year_id, :category_level_id, :_destroy]) 
    end 
end 

user.rb

class User < ActiveRecord::Base 
    # Include default devise modules. Others available are: 
    # :confirmable, :lockable, :timeoutable and :omniauthable 
    devise :database_authenticatable, :registerable, 
     :recoverable, :rememberable, :trackable, :validatable 

    has_many :requiredskills 
    has_many :category_advertskills, through: :requiredskills 
    has_many :category_adverts, through: :requiredskills 

    has_one :resume 

    accepts_nested_attributes_for :languages, :reject_if => :all_blank, :allow_destroy => true 
    accepts_nested_attributes_for :requiredskills, :reject_if => :all_blank, :allow_destroy => true 
end 
+1

請出示你的控制器,這很可能無關繭寶石。此外,你有鏈接包裝在一個按鈕 - 這是非常有趣的,但可能不是最好的做法。點擊添加字段的鏈接? – BroiSatse

+2

粘貼用戶模型的代碼也 –

回答

1
def edit 
    @requiredskills = @user.requiredskills.present? ? @user.requiredskills : @user.requiredskills.build 
end 

改變這種代碼在控制器

+0

謝謝你soo !!!! @RORDeveloper – ARTLoe