【问题标题】:Creating a contact form in a Bootstrap modal在 Bootstrap 模式中创建联系表单
【发布时间】:2015-08-25 16:52:19
【问题描述】:

我想在 Bootstrap 模式中有一个联系表。制作模态弹出窗口非常简单。

电子邮件不会发送给管理员。我的应用程序的想法有点像 Airbnb,用户可以拥有一所房子(在我的例子中是一对一的)。因此,在样板间页面上,用户可以单击按钮联系所有者。我可以从房屋和用户之间的关系中获取电子邮件。

我的联系表格不应该保存到数据库中,只需发送电子邮件即可。我需要的唯一字段是消息。我应该能够从为模式提供服务的页面的控制器获取电子邮件(这就是我不想引入另一个控制器的原因)。

有一些制作联系表的教程,比如这个:https://rubyonrailshelp.wordpress.com/2014/01/08/rails-4-simple-form-and-mail-form-to-make-contact-form/

但这会创建一个联系人模型、视图和控制器。现在我的模态是部分的。如何使该部分成为联系人的视图?

我觉得我不应该需要新的模型、视图和控制器。我不能只用一个新的邮件来做到这一点吗?

【问题讨论】:

  • 联系表格应该只有电子邮件和描述吗?您是要存储到数据库中还是只是向管理员发送电子邮件?
  • 我更新了问题以说明我不想在数据库中保存任何内容。此外,电子邮件将发送给其他用户,而不是管理员。

标签: ruby-on-rails ruby-on-rails-4


【解决方案1】:

由于我对 Rails 缺乏了解,我的问题可能很愚蠢。我想通了,这就是我所做的,以帮助他人。

表单处于模态的事实并不重要。在模态中渲染表单很容易。

因为当你按下提交按钮时,表单必须做一些事情,需要一个控制器和路由。然后我需要一个邮件。基本上这就是答案,但我不需要其他视图,因为表单已经在我的模式中:

Contact Form Mailer in Rails 4

【讨论】:

    【解决方案2】:

    为您的控制器操作创建一个 js.erb 文件,如 contact.js.erb 并在其中呈现您的表单部分。例如

    jQuery("#modal_pops").html("<%= j render 'your_modal'  %>");
    jQuery("#model_container").modal("show");
    

    然后在那个模式中写下你的表格。如果您不想将该信息保存到数据库,那么只需将表单提交给一个操作并从该操作发送电子邮件。我希望你能明白。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-03-07
      • 1970-01-01
      • 2016-12-29
      • 1970-01-01
      • 1970-01-01
      • 2018-12-16
      • 1970-01-01
      相关资源
      最近更新 更多