geçersiz form gönderimleri işlemek için doğru yolu. Sorun, geçersiz form gönderimleriyle nasıl başa çıkılacağıyla ilgili.Ben raylar yeniyim ve ben geçtiniz öğreticiler bazı işlerinizi ettik yolu ile kabul emin değilim Raylar
class ThingsController < ApplicationController
# POST /things
def create
@thing = Thing.new(params[:thing])
if @thing.save
flash[:notice] = 'Thing created'
redirect_to(@thing)
else
render :action => :new
end
end
thing.save başarısız @ kullanıcı gitti şeyin bir flaş ile birlikte önceden doldurulmuş aşımı o sadece girilen değerlerle aynı form ile sunulduğunda: şeyler yapmanın standart yol gibi görünüyor yanlış. Şimdiye kadar çok iyi, şu anda URL,/things/new'den bir şeye değişti, ki bunun yerine indeks görünümünü oluşturması bekleniyordu. kullanıcı sayfayı yeniler Ayrıca
, şu an indeks görünümünde bakıyor. Eğer geri tıklarsa, her zaman kaçınmaya çalıştığım formu yeniden göndermesi istenir. Yeniden yönlendirme_to (new_thing_path) ise, kullanıcının önceki sunumu hata mesajları gibi kaybolur.RESTLE, bu yöntemin "doğru" olabileceğinin farkındayım, çünkü bir nesnenin oluşturulması POST'lerin/şeylerin sonucu olmalıdır, ancak kullanıcı arabirimi açısından bilhassa umurumda değil.
yapabilirdim "elle" Geri new_thing_path onu yönlendirmek sonra görüntülenecek, kullanıcının oturumda geçersiz @thing nesneyi kaydetmek, ama bu kesmek gibi hissediyor. Sadece bunu yapmanın bir "raylar yolu" olması gerektiği gibi görünüyor.Fikirler?
Rails çekirdeği ile ilgili tam olarak aynı şikayetim var ama siz onu yaptığımdan daha iyi ifade ettiniz :) İyi soru. – Andrew