Bir yöneticinin e-posta adresine gönderdikten sonra ad, telefon, e-posta ve mesaj girmeyi sağlayan bir iletişim sayfası vardır. DB'de mesaj saklamak için bir sebep yok.Denetleyiciden raylar geçerliliği
Soru. Nasıl yapılır: denetleyicisi
Kullanım Raylar doğrulamaları, hiç modeli kullanılarak değil, OR modelde
Kullanım doğrulamaları, ancak herhangi bir DB ilişkileri olmadan
UPD:
Model:
class ContactPageMessage
include ActiveModel::Validations
include ActiveModel::Conversion
extend ActiveModel::Naming
attr_accessor :name, :telephone, :email, :message
validates :name, :telephone, :email, :message, presence: true
validates :email, email_format: { :message => "Неверный формат E-mail адреса"}
def initialize(attributes = {})
attributes.each do |name, value|
send("#{name}=", value)
end
end
def persisted?
false
end
end
kontrolör: Hala modeli kullanmak için tavsiye ediyorum
def sendmessage
cpm = ContactPageMessage.new()
if cpm.valid?
@settings = Setting.first
if [email protected]
redirect_to contacts_path, :alert => "Fail"
end
if ContactPageMessage.received(params).deliver
redirect_to contacts_path, :notice => "Success"
else
redirect_to contacts_path, :alert => "Fail"
end
else
redirect_to contacts_path, :alert => "Fail"
end
end
end
Bence aynı adı 'ContactPageMessage' olan bir sınıfınız var. Sorun bu. –
Veritabanına isim, telefon ve e-posta kaydetmek mi istiyorsunuz ve sadece mesajın doğrulanması ve veritabanına kaydedilmemesi gerekiyor mu? – user2801
@sumi, DB'ye kaydedilmiş bir şey olmak istemiyorum. Sadece doğrulanmış. – Roman