2016-02-07 3 views
0

Je crée un formulaire dans Rails4. Lorsque j'ai ajouté des divs pour styliser ce formulaire, le bouton f.smit a cessé de fonctionner. Je n'ai pas changé le contrôleur ou le modèle. Code ci-dessous. Merci!Ajout de style à un formulaire dans Rails 4 Le bouton f.submit ne fonctionne pas

_form dans la vue des plans

<div class="sidebar-widget"> 
        <div class="Pricing-box"> 
         <div class="price-title spacing-box"> 
         <h4>Create a New Plan</h4> 
         </div> 

        <hr> 
        <div class = "sidebar-form" 
        <%= form_for(plan) do |f| %> 

         <div class="name-field"> 
         <%= f.label :name %> 
         <%= f.text_field :name %> 
         </div> 

         <div class="time-field"> 
         <%= f.label :time %> 
         <%= f.time_field :time %> 
         </div> 

         <div class="date-field"> 
         <%= f.label :date %> 
         <%= f.date_select :date %> 
         </div> 

         <div class="restaurant-field"> 
         <%= f.label :restaurant %> 
         <%= f.collection_select :restaurant_id, Restaurant.all, :id, :name %> 

         </div> 
         </div> 

         <div class="spacing-grid"> 

         <%= f.submit "Create Plan", class: 'btn btn-md btn-black'%> 
         <% end %> 

         </div> 
        </div> 

du contrôleur Plans: nouveau, indexer et de créer des actions

class PlansController < ApplicationController 

    def new 
    @plan = Plan.new 
    end 

    def create 
    @plan = Plan.create(plan_params) 
    @plan.users << current_user 
    redirect_to @plan 
    end 

    def index 

    @plans = Plan.all 
    #binding.pry 
    respond_to do |format| 
     format.html 
     format.js {} 
    end 
    end 

de la vue, les plans index.html.erb

<section class="ptb ptb-sm-50"> 
      <div class="container"> 
       <div class="row"> 
        <div class="col-md-3 col-sm-4 mt-xs-30"> 
         <%= render "plans/form", {plan: Plan.new } %> 
         <%= render "plans/all_plans", {plans: @plans} %> 
        </div> 
       </div> 
      </div> 
</section> 
+0

Qu'est-ce qui apparaît dans votre journal lorsque vous cliquez sur le bouton Soumettre? – MarsAtomic

+1

C'est la syntaxe correcte pour un bouton de soumission dans un formulaire dans Rails 4. Pouvez-vous poster le code de formulaire complet? Peut-être aussi un code de modèle/contrôleur. –

+0

@marsAtomic Curieusement, rien ne se passe dans la console. – Keren

Répondre

0

Essayez de modifier votre tag form_for pour qu'il ressemble à ceci:

<%= form_for @plan, url: {action: "create"} do |f| %> 

C'est la syntaxe recommandée par le guide Rails - vous ne savez pas si cela va résoudre votre problème ou non.

+0

Merci! J'ai essayé cela (sauf que puisqu'il s'agit d'une partie qui sera utilisée par différents contrôleurs, je n'ai pas utilisé la variable d'instance - je définis plan dans la page index.html.erb qui rend le partiel) mais cela n'a pas fonctionné . Je pense que créer est l'action par défaut pour un formulaire de toute façon. – Keren