就像在 SO 上输入问题时一样,我看到文本框下方的框中包含实时版本 - 或者在 Github 上,我可以简单地转到“预览”而不保存记录,我如何使用 Rails 实现这一点?
假设我有一个Question
模型,它具有body
我想查看实时预览的属性(逐个字符或按下preview
显示它的按钮)。
就像在 SO 上输入问题时一样,我看到文本框下方的框中包含实时版本 - 或者在 Github 上,我可以简单地转到“预览”而不保存记录,我如何使用 Rails 实现这一点?
假设我有一个Question
模型,它具有body
我想查看实时预览的属性(逐个字符或按下preview
显示它的按钮)。
在 HTML 中你可以这样写:
<% if params[:preview_button] %>
<%= textilize @project.description %>
<% end %>
...
<%= submit_tag 'Create' %>
<%= submit_tag 'Preview', :name => 'preview_button' %>
*# => params = { “preview_button” => “Preview” ....* - 你会看到;
def create
@project = Project.new(params[:project])
if params[:preview_button] || !@project.save
render :action => 'new'
else
flash[:notice] = "Successfully created project."
redirect_to project_path(@project)
end
end
您可以重写创建操作,将 ajax 添加到表单预览,方法是放置 remote: true
我试图展示主要思想。