Ich bin stecken bei der Übergabe eines Variablenwerts vom Controller auf teilweise. Ich habe alle Daten von Fähigkeiten-Datenbank auf @skillSetData von der Steuerung kommen: SkillSetsControllerWeitergabe der Variablen von der Steuerung zu Teilansicht Schienen
def skillsetdata
@skillSetData = SkillSet.all
end
Der Code unten auf skill_set/skillsetdata.html.erb alle Daten angezeigt werden soll.
<% @skillSetData.each do |single_skill| %>
<option value="<%= single_skill.skillname %>"><%=single_skill.skillname %></option>
<% end %>
Aber ich bin nicht in der Lage die Variable übergeben, wenn skillsetdata.html.erb ein Teil also ist: _skillsetdata.html.erb. Der Code für die _skillsetdata ich geschrieben habe, ist:
<% skills_set_data.each do |single_skill| %>
<option value="<%= single_skill.skillname %>">
<%=single_skill.skillname %>
</option>
<% end %>
Ich will es machen teilweise, weil es die Dropdown-Liste, die auf verschiedenen anderen Seiten gemacht werden muss. Eine der Seiten, die ich verwenden möchte, ist: static_pages/home.html.erb, die von verschiedenen Controllern ist, dh: staticPages. Der Code, den ich nach Hilfe versucht haben, ist:
<%= render partial: 'skill_sets/skillsetdata', locals: { skills_set_data:@skillSetData } %>
Aber ich bin immer Fehler wie: nicht definierte Methode `jedes‘ für nil: NilClass in skill_sets/_skillsetdata.html.erb bei dem Versuch, nach Hause zu laden .html.erb. Ich bin nicht in der Lage, Daten zwischen verschiedenen Seiten von einem Teil zu übergeben.
Jede Hilfe mit Beispielcode wäre hilfreich.
'Action :: UnknownFormat' ist ein anderer Fehler. Wie lautet der Code in Ihren Controllern? –
Ich erkannte, der Fehler war eigentlich undefinierte Methode 'jedes 'für nil: NilClass in skill_sets/_skillsetdata.html.erb beim Versuch, load.html.html zu laden. – adhital
Es gibt nur einen Grund, diesen Fehler zu bekommen. Die von Ihnen verwendete Instanzvariable ist null. Andernfalls, wenn das Partial nicht existiert, wäre 'Missing partially', wenn die lokale Variable seted nicht im Namen in der Partiellen übereinstimmt, dann 'undefined lokale Variable oder Methode' wenn @skillSetData keine' undefinierte Methode 'ist für nichts: NilClass'. Probieren Sie es aus, verwenden Sie "localhips: {skills_set_data: nil}" und sehen Sie, was passiert. –