Ruby on Rails - 在用户单击创建操作时连接保存到数据库的字符串

发布于 2024-11-26 09:36:00 字数 302 浏览 1 评论 0原文

已经很晚了,我可能应该睡一觉了。很简单,

我的表单中有 3 个字段供用户填写。一旦他们单击“创建”按钮,这些记录就会保存到数据库中。简单的。

然而,我希望这三个字段的数据同时连接在一起,没什么花哨的......并与其他记录同时插入到数据库中。这应该在用户创建后反映在显示页面上。

所以我需要一个操作来连接 3 个数据库列,假设列名是名字、姓氏和出生日期。表名 PeopleDetails

我尝试使用模型中内置的 after_create、before_save 构建模型,但什么也没有。建议。我想我会在睡一觉后回来重新审视这个

Its late and I probably should sleep on this. Easy one

I have 3 fields in a form which a user fills in. Once they click the create button these records are saved to the database. Simple.

However I want the data from these three fields at the same time to be concatenated together, nothing fancy..and inserted to the database at the same time as the other records. This should reflect back to the user on the show page after they create.

So I need an action to concatenate 3 db columns lets say column names are firstname, surname and DOB. table name PeopleDetails

I have tried building the model using after_create, before_save, built into the model, but nada. suggestions. I think I will come back and revisit this after some sleep

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

安稳善良 2024-12-03 09:36:00

假设您有一个名为 full_name 的列(模型属性),那么您可以通过以下方式将所有内容组合到模型创建/保存中:

class User < ActiveRecord::Base
  before_save :concatenate_details

  def concatenate_details
     self.full_name = "#{firstname} #{surname} #{dob}"
  end

end

Assuming you have a column (model attribute) called full_name than you can combine all together on a model create/save via:

class User < ActiveRecord::Base
  before_save :concatenate_details

  def concatenate_details
     self.full_name = "#{firstname} #{surname} #{dob}"
  end

end
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文