Ask A Question


You’re not receiving notifications from this thread.

Multiple forms one submit.

kriera asked in Rails

Hi there!

I've a view that needs to generate a form table, based on clients and days. For 7 days it creates

View (i've tried to do
<%= form_for @effort, data: {remote: true} do |f| %>
<% do |client| %>

<%= %>

    <%  @days.each do |day| %>

    <th style="" colspan="2">
    <%= render 'home/dashboard/form', :user => current_user, :client => client, :day => day  %>
    <% end %>
<% end %>

<% end %>

<%= button_tag "Save", id: "button-feedback-by-bullet", data: {controller: "effort", target: "effort", action: "effort#getdate" } %>

with Flatpickr i do select the date i need and with this JS I do modify the ID and the classname of HTML elements to be able to generate individual input fields

generateDates (a){

console.log("data generateDates: " + a)
this.numArray = new Array(7);

for (var i = 0; i < this.numArray.length; i++) {
  var dateParsed = Date.parse(a).add(-[i]).day()
  var dateToload = Date.parse(dateParsed).toString('dd/MM/yyyy')
  this.header = new Array()
  var header = document.getElementsByClassName('dateTodayEffort-'+[i])
  document.getElementById('dateToday-'+[i]).innerHTML = dateToload

var ar_header = header.length;

for (var n = 0; n < ar_header; n++) {
header[n].value = dateToload


let forms = document.getElementsByTagName('form');
for (let index = 0; index < forms.length; ++index) {
var formId = 'form'+[index]
forms[index].id = formId





def create
@effort =

  if @effort.effort_time = nil


 respond_to do |format|
    format.html { redirect_to dashboard_path , notice: 'Effort was successfully created.' }
    # format.json { render :show, status: :created, location: @effort }
    format.html { render dashboard
    format.json { render json: @effort.errors, status: :unprocessable_entity }

The problem i've is: once i do submit, it creates each input and do the redirect of each form

I would need to do some kinf of array of form data imput and once its saved then redirect or refresh page or whatever

any idea?

thanks in advance!

Join the discussion
Create an account Log in

Want to stay up-to-date with Ruby on Rails?

Join 83,770+ developers who get early access to new tutorials, screencasts, articles, and more.

    We care about the protection of your data. Read our Privacy Policy.