ruby-on-rails - 如何在显示页面上呈现不同的表单
问题描述
我有一个带有kind
列的事件模型。活动可以是训练营、会议等。
现在,在每个活动页面上,我都会为客户显示一个表格,以便客户可以注册此特定活动。客户belongs_to
事件。
现在,我想要一种新的事件,对于这个特定的事件,我需要在表单中为客户显示额外的字段。客户表没有这些列。这些字段应该是位置、培训日期、父母姓名、父母电话等。
当然,新字段应在输入时进行验证。我知道如何在事件显示页面上有条件地呈现不同的表单,但我不太确定在哪里添加新列以及如何在控制器中处理它。我不想将这些列添加到客户表中,因为我认为它们并不真正属于那里。
此外,我还需要验证新字段,因此会出现呈现不同表单的情况,如果只呈现一个特定表单,我将无法验证所有字段。
你有什么想法我该怎么做吗?
解决方案
客户模型中的用户 attr_accessor 用于批量分配新字段
attr_accessor: :location,:training_date etc
现在,您可以使用模型对象从表单传递这些值。您可以在“实用或视图”中调整条件
如果要将这些值存储在数据库表中,则必须在客户模型中创建列。或者,如果您不想在客户表中创建字段,那么您可以使用“ Redis ”来存储值。
推荐阅读
- reactjs - 如何在反应中使用过滤器?
- javascript - 如何为页面上的每个元素覆盖 connectedCallback 和其他函数
- python - 无法使用 QWidget 和 QVBoxLayout 创建 QScrollArea 到使用 QVBoxLayout 的 QWidget
- javascript - NextJS 与 CSS/SCSS 加载器
- c++ - 调用 constexpr 与内联函数编译为不同的程序集,禁用优化
- javascript - 从使用 JavaScript 创建的按钮中获取 ID
- c++ - 是否有任何函数可用于在 c++ 编程中转移流程以替代 while 或 do while 循环?
- reactjs - 如何在基于反应的用户访问中动态定义一组路由?
- java - 保存捆绑数据的任何方式
- python - 如何在排除 NaN 的同时按列分组并计算其他列的总数?