我正在做一个小测试,想看看我的想法是否正确。
我有一个将要接收一串数据的表格。提交后,它将进行一些格式化,然后显示格式化的数据。
我本来以为在index操作中具有表单,将数据发布以创建,然后使用格式化后的数据重定向回index。我不喜欢这样,因为格式化后的数据附加了带有查询字符串的网址(太丑陋了)
将表单发布到索引操作并使用帮助程序方法格式化数据并显示它是否合理。我的索引方法看起来像这样:
def index
if params
# Do Stuff
end
end
答案 0 :(得分:0)
也许您可以通过使用无表模型(无需数据库连接)和内置的ActiveRecord
精美功能来实现此目的,从而满足您的需求。
class Person
include ActiveModel::Model
attr_accessor :name, :email
...
end
然后在您的索引操作中显示,并使用表单发送一个POST
进行创建,然后简单地显示一个模板,其中显示了格式化的数据。
# controller
def index
@person = Person.new
end
def create
@person = Person.new(person_params)
render :formatted # formatted.html.erb
end
# index.html.erb
<%= form_for @person %>
...
<% end %>