私はこの問題を解決できません。私はsimple_formを使用しており、モデルを使ってフォームをレンダリングする必要がありますが、問題はエスケープ・ジャバスクリプトを持たないjsファイルですteam_players_input.js.erbそれぞれのモデルをescape_javascriptに渡してフォームをレンダリングします
<div id="myModal" class="modal fade">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body">
<%= simple_form_for @team do |t|%>
<div class="row">
<ul class="team_name">
<li><%=t.input :name, label: 'Nombre del Team'%></li>
<%=t.fields_for :checkbox do |c|%>
<li><%=c.input :check, as: :boolean, label: 'Crear y Agregar Usuarios'%></li>
<li><%= t.association :users, label: "Buscar Usuarios"%></li>
<%end%>
</ul>
<%= render :partial => 'teams/forms/team_players_input', :locals =>{ t: t}%>
<div class="modal-footer">
<button class="btn" type="button" id="boton">Cancelar</button>
<%=t.submit "Crear Team", :class => 'btn btn-primary', id: 'create_team_boton'%>
</div>
<%end%>
<%=form_tag team_players_input_teams_path, remote: true, id:'team_players_input', authenticity_token: true do%>
<%end%>
</div>
</div>
</div>
team_players_input controller action:
respond_to do |format|
format.js
end
:
各new.html.erb内のモデルを取得します
$("#team-players-input").replaceWith("<%= escape_javascript(render(:partial => 'teams/forms/team_players_input', :locals => {t: t))%>");
_team_players_input.html.erb:
<div class="add_team_user" id="team-players-input">
<%if [email protected]?%>
<%= t.fields_for :user do |u|%>
<ul class="team" id="add_team_players_list">
<div class="player">
<li>Player 1</li>
<ul class="team_player">
<li><%=u.input :name1, label: 'Nombre:'%></li>
<li><%=u.input :lastname1, label: 'Apellido:'%></li>
<li><%=u.input :rut1, label: 'Rut'%></li>
<li><%=u.input :nickname1, label: 'Nick:'%></li>
</ul>
</div>
</ul>
<%end%>
<%end%>
私の問題があり、レンダリングファイルにfields_for使用する "T" モデルをキャッチしますが、私は次のエラーをスローする必要があります
ActionView::Template::Error (wrong number of arguments (0 for 1..2)):
app/views/teams/forms/_team_players_input.html.erb:3:in `_app_views_teams_forms__team_players_input_html_erb___3125175976749038336_69999593801700'
app/views/teams/team_players_input.js.erb:1:in `_app_views_teams_team_players_input_js_erb__1712103055993110209_69999599110300'
レンダリングファイルにモデルを渡す方法はありますか?誰か助けてください
あなたのファイル参照は、あなたのアプリケーションに名前が付けられている方法で名前を付けることができます。あなたが 'jsファイル' 'レンダリングファイル'などを見ているときに、質問を理解するのが難しいです。 – oreoluwa
申し訳ありません編集済みのC: – StAx
@StAx team_players_input.js.erbはどのようにトリガーされましたか?私はどのような行動方法からですか?どのようなフォームリクエスト/ボタンでも、そのアクションメソッドをトリガーしていることを伝えておくと便利です。これらのことを教えてください。私はそれに応じて回答を構成します。 –