我创建了几个静态页面,其中包含了很棒的high_voltage gem。
我的页面是静态的,除了每页中的不同表单。
表单应该抓取用户详细信息并发送电子邮件(可能在db中保存详细信息)
问题:
我该如何处理?
我更关心rails方法,
e.g。
假设,我想将这些字段保存在db中,我该如何处理?
简而言之,我想在不手动处理事物的情况下使用rails magic的最大值。
我尝试了什么?
目前,我在每个页面都有表单。每个表单都使用post
方法在同一控制器(PagesController)上发布。
然后我根据相应表单上的隐藏输入区分它们。
我暂时没有任何验证。
答案 0 :(得分:1)
我终于在this great article之后创建了一个没有activerecord的模型。
我创建了一个如下的模型。
class Message
include ActiveModel::Validations
include ActiveModel::Conversion
extend ActiveModel::Naming
attr_accessor :name, :email, :subject, :body
validates :name, :email, :subject, :body, :presence => true
validates :email, :format => { :with => %r{.+@.+\..+} }, :allow_blank => true
def initialize(attributes = {})
attributes.each do |name, value|
send("#{name}=", value)
end
end
def persisted?
false
end
end
答案 1 :(得分:0)
我在这里更详细地回答了这篇文章: Render partial from static page
以下是对演示存储库的提交以使其工作: https://github.com/harlow/high_voltage_demo/commit/0cdbca5b0fe898d27df22787498fc7e350e81422