link_to_unless_current schlägt fehl, wenn Formulare mit Fehlernachrichten auf verbleibenden Routen verarbeitet werden
weiß jemand, wie man den ausfallenden Mechanismus von link_to_unless_current verhindert?
zB: Ich habe meine Seitennavigation mit
link_to_unless_current "new task", new_task_path
Wenn ich auf den Link klicke, komme ich zum neuen Takes-Pfad-Formular ... und es wird kein Link erstellt -> ok. Dann habe ich falsche Werte in das Formular eingetragen und abschicken.
Der TasksController verarbeitet die Aktion "create", die Validierung für das ActiveRecord-Modell schlägt aufgrund der falschen Daten fehl und der Controller rendert die Aktion "new" (und enthält die Fehlermeldungen für das Modell).
class TasksController < ApplicationController
def create
@task = Task.new(params[:task])
if @task.save
flash[:notice] = 'task was successfully created.'
redirect_to(tasks_url)
else
render :action => "new"
end
end
end
Aber hier wird der Link erstellt! -> Wegen des Unterschieds zwischen den URLs:
link path = new_task_path
aber
posted path = tasks_path with :method => :post
Weiß jemand, wie man dieses Problem sauber löst?
Vielen Dank