2016-05-24 4 views
0

У меня есть форма здесь, и когда я нажимаю кнопку, я не получаю вывод в консоли. Я добавил всю форму ниже. Я не являюсь оригинальным автором этой формы, я просто пытаюсь добавить функцию для редактирования темы в этой форме.Почему моя кнопка отправки ничего не делает?

Вид:

 <%= form_tag :action => 'update_subject', :controller => 'task', :id => @task.id do -%> 
    <tr> 

    <td><b>Subject:</b></td> 
    <td><div id='edit_subject_div'><%=text_field_tag 'subject', @task.subject %></div></td> 
    </tr> 
    <tr> 
    <td></td> 
    <td><%=submit_tag "Submit", data: { disable_with: "Please wait..."}%></td> 
    </tr> 
    <%end -%> 

Действие:

def update_subject 
    @task = Task.find_by_id(params[:id]) 
    if @task.subject != params[:subject] 
     @task.subject = params[:subject] 
     @task.save! 
    end 
    end 

Всего Форма:

<script> 
    $(document).ready(function(){ 
    $('select#activity_category_id').chained('select#cat_type_id'); 
    $('#activity_category_id').css('border', 'Silver 1px solid'); 
    $('#activity_location_id').css('border', 'Silver 1px solid'); 
    $('#activity_location_modifier_id').css('border', 'Silver 1px solid'); 
    //$('a[rel*=facebox]').facebox(); 
    }); 
    $(document).on('ajax:before', function(){ 
    $.facebox.loading(); 
    }); 

</script> 
<h2>Task Detail:</h2><br/> 
<% 
    @task = Task.find(params[:task_id].to_i) if params[:task_id] 
    @devices = [["",""]] + Device.where(job_id: @task.job_id, active: true).order(:name).pluck('name', 'id') 
    @hours = (0..24).to_a 
    @minutes = [0, 15, 30, 45] 
    @today = Date.today 
    @priorities = ["High", "Medium", "Low"] 
    @user_list=[["",""]] + User.where(:active=>true).order('nickname').pluck('nickname', 'id') 
    @groups=Group.order('name').pluck('name', 'id') 
    @[email protected] do |g| g[1]='group' + g[1].to_s end 
    @users = @user_list + @groups 
    @location=Location.where(active: true).order('description').pluck('description', 'id') 
    @location_modifier=LocationModifier.where(active: true).order('description').pluck('description', 'id') 
    #@categories = Category.where(active: 1).order(:description).pluck('description', 'id') 
    params[:sort].nil? ? sort_str = "" : sort_str = params[:sort] 
    params[:hist_length].nil? ? hist_str = "" : hist_str = params[:hist_length] 
    @return_url = params[:return_url] 
%> 


<table style="border:none;width:90%"> 
<tr><td style="width:38%;vertical-align: top"> 
<table style="border:none;width:90%"> 
    <tr><td><b>Task ID:</b></td> 
    <td><%[email protected]_s%></td></tr> 
    <tr> 
    <td><b>Method of Contact:</b></td> 
    <td><%= @task.contact_type %></td> 
    </tr> 
    <tr> 
    <td><b>Contacted by:</b></td> 
    <td><%= @task.customer_contact %></td> 
    </tr> 
    <tr> 
    <td><b>Task Created by:</b></td> 
    <td><%= @task.created_by.nickname %></td> 
    </tr> 
<% if [email protected]_task_id.nil? then %> 
    <tr> 
    <td><b>Task Split from:</b></td> 
    <td><%= link_to 'Parent Task', :action => 'edit', :id => @task.parent_task_id %></td> 
    </tr> 
<% end %> 
    <%= form_for @task do |f|%> 
    <tr> 

    <td><b><%= f.label :subject %>:</b></td> 
    <td><div id='edit_subject_div'><%= f.text_field :subject %></div></td> 
    </tr> 
    <tr> 
    <td></td> 
    <td><%= f.submit %></td> 
    </tr> 
    <%end %> 
    <tr> 
    <td colspan=2><b>Description:</b></td> 
    </tr>c 

    <tr> 
    <td colspan=2><%=simple_format(@task.description)%></td> 
    </tr> 
    <tr><td colspan=2>&nbsp;</td></tr> 
    <tr> 
    <td><b>Task Initiated:</b></td> 
    <td><%= @task.created_at.strftime("%H:%M %p %m/%d/%y") %>&nbsp;&nbsp;<%= (Date.today - @task.problem_on).to_i %> Days Old</td> 
    </tr> 
    <tr> 
    <td><b>Assigned Due Date:</b></td> 
    <td><%= @task.due_on.strftime("%m/%d/%y") %></td> 
    </tr> 
    <tr> 
    <td><b>Status:</b></td> 
    <td> 
    <% if @task.resolved_on %> 
    Resolved on <%= @task.resolved_on.strftime("%m/%d/%y") %> 
    <% elsif @today < @task.due_on %> 
    Due in <%= (@task.due_on - @today).to_i %> Days 
    <% elsif @today > @task.due_on %> 
    <%= (@today - @task.due_on).to_i %> Days Overdue 
    <% else %> 
    Due Today 
    <% end %> 
    </td> 
    </tr> 
<tr> 
    <td><b>Device:</b></td> 
    <td><%= @task.device.nil? ? "None Assigned" : @task.device.name %></td> 
    </tr> 
    <tr> 
    <td><b>Assigned To:</b></td> 
    <% if [email protected]_to.nil? then %> 
    <td><%[email protected]_to.nickname %></td> 
    <% elsif [email protected]? then %> 
    <td><%[email protected]%></td> 
    <% else %> 
    <td>Unassigned</td> 
    <% end %> 
    </tr> 
    <tr> 
    <td><b>Priority:</b></td> 
    <td><%[email protected] %></td> 
    </tr> 
    <tr> 
    <td><b>Resolved:</b></td> 
    <% if [email protected]_on.nil? then %> 
    <td><%[email protected]_on.strftime("%m/%d/%Y") %></td> 
    <% else %> 
    <td>Unresolved</td> 
    <% end %> 
    </tr> 
</table> 
<%=form_tag :action => 'update', :controller => 'task', :id => @task.id do -%><%=hidden_field_tag 'from_project_track', 'yes'%><%=hidden_field_tag 'return_path', @return_url%> 
<table> 
    <tr><td colspan=2><b>New Note:</b></td></tr> 
    <tr> 
    <td colspan=2><%= text_area_tag 'note', nil, :size => '50x5' %></td> 
    </tr> 
    <% if [email protected]_id.nil? then %> 
    <tr> 
    <td><label for="task_device_id">Device</label>:</td> 
    <td><%=select_tag 'task[device_id]', options_for_select(@devices, @task.device_id) %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <%else%> 
    <tr> 
    <td><label for="task_device_id">Device</label>:</td> 
    <td><%=select_tag 'task[device_id]', options_for_select(@devices, '') %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% end %> 
    <tr> 
    <td>Assigned Due Date:</td> 
    <td><%= date_select 'task', 'due_on' %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% if [email protected]_to_id.nil? then %> 
    <tr> 
    <td><label for="task_assigned_to">Assigned To</label>:</td> 
    <td><%= select_tag 'task[assigned_to_id]', options_for_select(@users, :selected=>@task.assigned_to_id.to_s) %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% elsif [email protected]_id.nil? then %> 
    <tr> 
    <td><label for="task_assigned_to">Assigned To</label>:</td> 
    <td><%= select_tag 'task[assigned_to_id]', options_for_select(@users, 'group' + @task.group_id.to_s) %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% else %> 
    <tr> 
    <td><label for="task_assigned_to">Assigned To</label>:</td> 
    <td><%= select_tag 'task[assigned_to_id]', options_for_select(@users) %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% end %> 
    <tr> 
    <td><label for="task_priority">Priority:</label></td> 
    <td><%= select 'task', 'priority', @priorities %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <tr> 
    <td>Resolved:</td> 
    <td><%= check_box_tag 'resolved', 1, @task.resolved_on %></td> 
    </tr> 

    <tr> 
    <td>Bill:</td> 
    <td colspan="2"><%= select_tag 'bill_hours', options_for_select(@hours, 0) %>:<%= select_tag 'bill_minutes', options_for_select(@minutes, 0) %></td> 
    </tr> 
    <tr> 
    <td>Nonbill:</td> 
    <td colspan="2"><%= select_tag 'nonbill_hours', options_for_select(@hours, 0) %>:<%= select_tag 'nonbill_minutes', options_for_select(@minutes, 0) %></td> 
    </tr> 
    <tr> 
    <td>Category:</td> 
    <td colspan="2"> 
     <%=select_tag 'cat_type_id',options_for_select(@cat_type_list,@selected_cat_type), {:prompt=>"Select Category Type"}%><br/> 
     <select id="activity_category_id" prompt="Select Category" name="activity[category_id]" style="width:300px;"> 
     <option value=''>Select Category</option> 
     <%@cat_list.each do |c|%> 
      <option value="<%=c.id%>" <%=([email protected]? && @activity.category_id==c.id) ? "selected" : "" %> class="<%=c.cat_type_id.nil? ? '':c.cat_type_id%>"><%=c.short_description.nil? ? c.description : c.short_description%></option> 
     <%end%> 
     </select></td> 
    </tr> 
    <tr> 
    <td>Location:</td> 
    <td><%= select 'activity', 'location_id',[["",""]] + @location %></td> 
    </tr> 
    <tr> 
    <td>Location Modifier:</td> 
    <td><%= select 'activity', 'location_modifier_id',[["",""]] + @location_modifier %></td> 
    </tr> 
    <tr> 
    <td>Review?:</td> 
    <td colspan="2"><%= check_box 'activity', 'review' %></td> 
    </tr> 


    <tr> 
    <td colspan=2 align="CENTER"><%=submit_tag "Submit", id: 'commit', data: { disable_with: "Please wait..."}%></td> 
    </tr> 
</table> 
<% end -%> 

</td> 
<% if params[:mobile] == "1" then %> 
</tr> 
<tr> 
<% end %> 
<td valign="TOP"> 
<table style="width:90%;padding:0;"> 
<tr><td colspan="2" ><%=link_to 'Task Time Report', :controller=>'time', :action=>'list', :task_id=>@task.id %></td></tr> 
<tr><td colspan="2" align="LEFT"><b>Notes:</b></td></tr> 
<% @notes = Note.where(task_id: @task.id).order('created_at') %> 
<% @notes.each do |n| %> 
<tr style="background-color: <%=cycle("white","silver")%>;"><td valign="TOP"><b><%=n.created_by.nil? ? "Error" : n.created_by.nickname %><br>(<%=n.created_at.strftime("%m/%d/%Y %I:%M")%>)</b></td><td valign="TOP"><%=simple_format(n.content)%></td></tr> 
<% end %> 
</table> 


</td></tr> 
</table> 
+0

У вас есть действительная запись для этого действия контроллера в config/routes.rb? –

+0

yes post 'task/update_subject' –

+0

Вы помещаете контрольную точку отладчика в свое действие 'update_subject', чтобы увидеть, остановилось ли там? \ – Cyzanfar

ответ

0

Не уверен, почему и как это зафиксировано, но я удалил первую форму и сделал вторую форму, охватывающую весь вид. Недостатком этого является то, что я должен отправить всю страницу, чтобы обновить тему.

<script> 
    $(document).ready(function(){ 
    $('select#activity_category_id').chained('select#cat_type_id'); 
    $('#activity_category_id').css('border', 'Silver 1px solid'); 
    $('#activity_location_id').css('border', 'Silver 1px solid'); 
    $('#activity_location_modifier_id').css('border', 'Silver 1px solid'); 
    //$('a[rel*=facebox]').facebox(); 
    }); 
    $(document).on('ajax:before', function(){ 
    $.facebox.loading(); 
    }); 
    function confirmSelections(){ 
    valid=false; 
    valid1=false; 
    valid2=false; 
    if ($('#activity_category_id').val()==""){ 
     $('#activity_category_id').css('border', 'red 2px solid'); 
     valid= false; 
    }else{ 
     $('#activity_category_id').css('border', 'Silver 1px solid'); 
     valid= true; 
    } 
    if ($('#activity_location_id').val()=="") 
    { 
     $('#activity_location_id').css('border', 'red 2px solid'); 
     valid1=false; 
    } 
    else 
    {$('#activity_location_id').css('border', 'Silver 1px solid'); 
     valid1=true;} 
    if ($('#activity_location_modifier_id').val()=="") 
    {$('#activity_location_modifier_id').css('border', 'red 2px solid'); 
     valid2=false; 
    }else{ 
     $('#activity_location_modifier_id').css('border', 'Silver 1px solid'); 
     valid2= true; 
    } 
    if (valid && valid1 && valid2) 
    {return true;} 
    else 
    { 
     if (($('#nonbill_hours').val()!='0' || $('#bill_hours').val()!='0' || $('#nonbill_minutes').val()!='0' || $('#bill_minutes').val()!='0' || $('#nonbill_hours').val()!='0') && ($('#activity_category_id').val()=='')){ 
     var answer = (confirm('No category is selected. Click Cancel to select. Click OK to update the task with no time entry.')) ; 
     return answer; 
     } 
     if (($('#nonbill_hours').val()!='0' || $('#bill_hours').val()!='0' || $('#nonbill_minutes').val()!='0' || $('#bill_minutes').val()!='0' || $('#nonbill_hours').val()!='0') && ($('#activity_location_id').val()=='')){ 
     var answer = (confirm('No location is selected. Click Cancel to select. Click OK to update the task with no time entry.')) ; 
     return answer; 
     } 
     if (($('#nonbill_hours').val()!='0' || $('#bill_hours').val()!='0' || $('#nonbill_minutes').val()!='0' || $('#bill_minutes').val()!='0' || $('#nonbill_hours').val()!='0') && ($('#activity_location_modifier_id').val()=='')){ 
     var answer = (confirm('No location modifier is selected. Click Cancel to select. Click OK to update the task with no time entry.')) ; 
     return answer; 
     } 
    } 
    } 
    $('form').submit(confirmSelections); 
</script> 
<h2>Task Detail:</h2><br/> 
<% 
    @task = Task.find(params[:task_id].to_i) if params[:task_id] 
    @devices = [["",""]] + Device.where(job_id: @task.job_id, active: true).order(:name).pluck('name', 'id') 
    @hours = (0..24).to_a 
    @minutes = [0, 15, 30, 45] 
    @today = Date.today 
    @priorities = ["High", "Medium", "Low"] 
    @user_list=[["",""]] + User.where(:active=>true).order('nickname').pluck('nickname', 'id') 
    @groups=Group.order('name').pluck('name', 'id') 
    @[email protected] do |g| g[1]='group' + g[1].to_s end 
    @users = @user_list + @groups 
    @location=Location.where(active: true).order('description').pluck('description', 'id') 
    @location_modifier=LocationModifier.where(active: true).order('description').pluck('description', 'id') 
    #@categories = Category.where(active: 1).order(:description).pluck('description', 'id') 
    params[:sort].nil? ? sort_str = "" : sort_str = params[:sort] 
    params[:hist_length].nil? ? hist_str = "" : hist_str = params[:hist_length] 
    @return_url = params[:return_url] 
%> 


<table style="border:none;width:90%"> 
<tr><td style="width:38%;vertical-align: top"> 
    <%=form_tag :action => 'update', :controller => 'task', :id => @task.id do -%><%=hidden_field_tag 'from_project_track', 'yes'%><%=hidden_field_tag 'return_path', @return_url%> 
<table style="border:none;width:90%"> 
    <tr><td><b>Task ID:</b></td> 
    <td><%[email protected]_s%></td></tr> 
    <tr> 
    <td><b>Method of Contact:</b></td> 
    <td><%= @task.contact_type %></td> 
    </tr> 
    <tr> 
    <td><b>Contacted by:</b></td> 
    <td><%= @task.customer_contact %></td> 
    </tr> 
    <tr> 
    <td><b>Task Created by:</b></td> 
    <td><%= @task.created_by.nickname %></td> 
    </tr> 
<% if [email protected]_task_id.nil? then %> 
    <tr> 
    <td><b>Task Split from:</b></td> 
    <td><%= link_to 'Parent Task', :action => 'edit', :id => @task.parent_task_id %></td> 
    </tr> 
<% end %> 
    <tr> 
    <td><b>Subject:</b></td> 
    <td><div id='edit_subject_div'><%= text_field_tag 'task[subject]', @task.subject%></div></td> 
    </tr> 
    <tr> 
    <td colspan=2><b>Description:</b></td> 
    </tr> 
    <tr> 
    <td colspan=2><%=simple_format(@task.description)%></td> 
    </tr> 
    <tr><td colspan=2>&nbsp;</td></tr> 
    <tr> 
    <td><b>Task Initiated:</b></td> 
    <td><%= @task.created_at.strftime("%H:%M %p %m/%d/%y") %>&nbsp;&nbsp;<%= (Date.today - @task.problem_on).to_i %> Days Old</td> 
    </tr> 
    <tr> 
    <td><b>Assigned Due Date:</b></td> 
    <td><%= @task.due_on.strftime("%m/%d/%y") %></td> 
    </tr> 
    <tr> 
    <td><b>Status:</b></td> 
    <td> 
    <% if @task.resolved_on %> 
    Resolved on <%= @task.resolved_on.strftime("%m/%d/%y") %> 
    <% elsif @today < @task.due_on %> 
    Due in <%= (@task.due_on - @today).to_i %> Days 
    <% elsif @today > @task.due_on %> 
    <%= (@today - @task.due_on).to_i %> Days Overdue 
    <% else %> 
    Due Today 
    <% end %> 
    </td> 
    </tr> 
<tr> 
    <td><b>Device:</b></td> 
    <td><%= @task.device.nil? ? "None Assigned" : @task.device.name %></td> 
    </tr> 
    <tr> 
    <td><b>Assigned To:</b></td> 
    <% if [email protected]_to.nil? then %> 
    <td><%[email protected]_to.nickname %></td> 
    <% elsif [email protected]? then %> 
    <td><%[email protected]%></td> 
    <% else %> 
    <td>Unassigned</td> 
    <% end %> 
    </tr> 
    <tr> 
    <td><b>Priority:</b></td> 
    <td><%[email protected]priority %></td> 
    </tr> 
    <tr> 
    <td><b>Resolved:</b></td> 
    <% if [email protected]_on.nil? then %> 
    <td><%[email protected]_on.strftime("%m/%d/%Y") %></td> 
    <% else %> 
    <td>Unresolved</td> 
    <% end %> 
    </tr> 
</table> 

<table> 
    <tr><td colspan=2><b>New Note:</b></td></tr> 
    <tr> 
    <td colspan=2><%= text_area_tag 'note', nil, :size => '50x5' %></td> 
    </tr> 
    <% if [email protected]_id.nil? then %> 
    <tr> 
    <td><label for="task_device_id">Device</label>:</td> 
    <td><%=select_tag 'task[device_id]', options_for_select(@devices, @task.device_id) %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <%else%> 
    <tr> 
    <td><label for="task_device_id">Device</label>:</td> 
    <td><%=select_tag 'task[device_id]', options_for_select(@devices, '') %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% end %> 
    <tr> 
    <td>Assigned Due Date:</td> 
    <td><%= date_select 'task', 'due_on' %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% if [email protected]_to_id.nil? then %> 
    <tr> 
    <td><label for="task_assigned_to">Assigned To</label>:</td> 
    <td><%= select_tag 'task[assigned_to_id]', options_for_select(@users, :selected=>@task.assigned_to_id.to_s) %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% elsif [email protected]_id.nil? then %> 
    <tr> 
    <td><label for="task_assigned_to">Assigned To</label>:</td> 
    <td><%= select_tag 'task[assigned_to_id]', options_for_select(@users, 'group' + @task.group_id.to_s) %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% else %> 
    <tr> 
    <td><label for="task_assigned_to">Assigned To</label>:</td> 
    <td><%= select_tag 'task[assigned_to_id]', options_for_select(@users) %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <% end %> 
    <tr> 
    <td><label for="task_priority">Priority:</label></td> 
    <td><%= select 'task', 'priority', @priorities %></td> 
    <td>&nbsp;</td> 
    </tr> 
    <tr> 
    <td>Resolved:</td> 
    <td><%= check_box_tag 'resolved', 1, @task.resolved_on %></td> 
    </tr> 

    <tr> 
    <td>Bill:</td> 
    <td colspan="2"><%= select_tag 'bill_hours', options_for_select(@hours, 0) %>:<%= select_tag 'bill_minutes', options_for_select(@minutes, 0) %></td> 
    </tr> 
    <tr> 
    <td>Nonbill:</td> 
    <td colspan="2"><%= select_tag 'nonbill_hours', options_for_select(@hours, 0) %>:<%= select_tag 'nonbill_minutes', options_for_select(@minutes, 0) %></td> 
    </tr> 
    <tr> 
    <td>Category:</td> 
    <td colspan="2"> 
     <%=select_tag 'cat_type_id',options_for_select(@cat_type_list,@selected_cat_type), {:prompt=>"Select Category Type"}%><br/> 
     <select id="activity_category_id" prompt="Select Category" name="activity[category_id]" style="width:300px;"> 
     <option value=''>Select Category</option> 
     <%@cat_list.each do |c|%> 
      <option value="<%=c.id%>" <%=([email protected]? && @activity.category_id==c.id) ? "selected" : "" %> class="<%=c.cat_type_id.nil? ? '':c.cat_type_id%>"><%=c.short_description.nil? ? c.description : c.short_description%></option> 
     <%end%> 
     </select></td> 
    </tr> 
    <tr> 
    <td>Location:</td> 
    <td><%= select 'activity', 'location_id',[["",""]] + @location %></td> 
    </tr> 
    <tr> 
    <td>Location Modifier:</td> 
    <td><%= select 'activity', 'location_modifier_id',[["",""]] + @location_modifier %></td> 
    </tr> 
    <tr> 
    <td>Review?:</td> 
    <td colspan="2"><%= check_box 'activity', 'review' %></td> 
    </tr> 


    <tr> 
    <td colspan=2 align="CENTER"><%=submit_tag "Submit", id: 'commit', data: { disable_with: "Please wait..."}%></td> 
    </tr> 
</table> 
<% end -%> 

</td> 
<% if params[:mobile] == "1" then %> 
</tr> 
<tr> 
<% end %> 
<td valign="TOP"> 
<table style="width:90%;padding:0;"> 
<tr><td colspan="2" ><%=link_to 'Task Time Report', :controller=>'time', :action=>'list', :task_id=>@task.id %></td></tr> 
<tr><td colspan="2" align="LEFT"><b>Notes:</b></td></tr> 
<% @notes = Note.where(task_id: @task.id).order('created_at') %> 
<% @notes.each do |n| %> 
<tr style="background-color: <%=cycle("white","silver")%>;"><td valign="TOP"><b><%=n.created_by.nil? ? "Error" : n.created_by.nickname %><br>(<%=n.created_at.strftime("%m/%d/%Y %I:%M")%>)</b></td><td valign="TOP"><%=simple_format(n.content)%></td></tr> 
<% end %> 
</table> 


</td></tr> 
</table> 
0

Попробуйте использовать form_for, так как вы изменяете существующий объект @task:

<%= form_for :task, @task, :url => { :action => :update_subject} do |f| %> 
    <%= f.label :subject %>: 
    <%= f.text_field :subject %> 
    <%= f.submit %> 
<% end %> 
+0

в порядке, внесенные изменения, кнопка все еще не производит вывод на консоль или обновляет элемент. –

+0

hmmmm странно ... может быть, это что-то с вашим html. вы могли бы пропустить во всей форме с помощью html – Cyzanfar

+0

'form_for' - это, безусловно, путь, так как вы используете его для определенного модального (' Task') – Cyzanfar

0

Удалить следующую строку из Javascript:

$('form').submit(confirmSelections); 

Это больше не будет выполнять динамические формы валидаций, но должны позволить кнопку Submit работать. Реальная проблема будет где-то в логике confirmSelections, и это будет зависеть от того, какие данные были введены в форму.

В качестве побочного примечания этот код выглядит так, что ему потребуется серьезная переделка. Как минимум:

  • Использование form_for вместо form_tag
  • Использование f.submit вместо submit_tag (когда form_for реализован)
  • Весь Javascript статична, и должен быть перемещен в трубопровод активов, а чем быть включен встроенный
  • Весь код Ruby, в блоке сразу после <h2>Task Detail:</h2> должен быть перемещен в контроллер/действие
  • код для @notes = Note.where(task_id: @task.id).order('created_at') должно быть перемещено в контроллере/действие
  • Javascript должен выбрать классы CSS, а не явный CSS стиль, так что ваша презентация может быть легко поддерживать

Они должны реально помочь сделать этот шаблон достаточно ремонтопригоден и отдельным MVC относится друг к другу.

+0

я удалил всю эту проверку, обновил код выше, все тот же результат. –

+0

Вы можете проверить, есть ли какие-либо обработчики событий, зарегистрированные в конвейере активов, которые могут обрабатывать события для формы или кнопки отправки. Я бы grep этот код для идентификаторов как формы, так и кнопки отправки. Однако, если события зарегистрированы в классе или типе элемента, это может быть труднее найти. –

Смежные вопросы