Le rendu partiel à partir d'un contrôleur dans les rails

J'ai un formulaire d'ajout de lignes de la DB via distance => true. Je veux ajouter de nouvelles données à une table, mais ne peut pas obtenir l'affichage correct pour le rendu.

Comme de maintenant, c'est le rendu de l'ensemble du spectacle.html.erb page pour la nouvelle entrée, mais je tiens à la disposition d'une version minimale d'ajouter, comme un . Est-il un moyen rapide de dire à mon contrôleur de la vue qu'à rendre après l'insertion dans la db? Je veux rendre mon partiel nommé _newly_added.html.erb

Mon Contrôleur

  def new
    @task = Task.new
    render :partial => "/tasks/newly_added", :locals => { :t => @task }
  end

Merci!!

MODIFIER
Je pense que ce dont j'ai besoin est juste une solution de rechange "show".

J'ai trouvé que la méthode que j'avais besoin de changement a été fait ceci:

  def create
    @task = Task.new(params[:task])

    respond_to do |format|
      if @task.save
        format.html { redirect_to @task, notice: 'Task was successfully created.' }
        format.json { render json: @task, status: :created, location: @task }
      else
        format.html { render action: "new" }
        format.json { render json: @task.errors, status: :unprocessable_entity }
      end
    end
  end

J'ai juste besoin de faire une alternative afficher la vue, et puis de dire ce à redirect_to ce point de vue.

Vous pouvez avoir une partielle de juste une ligne tr et de rendre le nouvel objet. Ensuite, vous pouvez juste obtenir les données de réponse de votre appel Ajax et de mettre le code html généré dans votre table. Pour ce faire, utilisez un respond_to :js sans mises en page et d'utiliser un spécifique partielle

OriginalL'auteur nathan | 2012-11-13