【问题标题】:Getting info from one form, saving to another model从一个表单获取信息,保存到另一个模型
【发布时间】:2015-01-22 16:16:08
【问题描述】:

我有 2 个模型

  1. 用户
  2. 个人资料(属于用户)

我在个人资料模型中有“用户名”。我想取“用户名”的价值 用户新表单并将其保存到配置文件的用户名。我怎样才能做到这一点。请建议代码。

【问题讨论】:

  • 要求我们推荐或查找书籍、工具、软件库、教程或其他场外资源的问题对于 Stack Overflow 来说是题外话,因为它们往往会吸引固执己见的答案和垃圾邮件。
  • 这确实是一个架构问题。也许您可以通过解释为什么username 没有存储在User 中来帮助我们?
  • @Stratus3D 我想为个人资料视图创建friendly_id url,但由于一些呼叫问题,我无法访问User.username
  • 我仍然不确定您的模型的结构。你能粘贴一些模型中的代码吗?

标签: ruby ruby-on-rails-4


【解决方案1】:

试试这个

将这些添加到您的 Gemfile 中

gem 'simple_form'
gem 'nested_form'

在你的用户模型中添加这个

accepts_nested_attributes_for :profile

在 simple_nested_form_for 下的表单中

= f.simple_fields_for :profile do |p|
  = p.input :username

在您的用户控制器中 添加此项以允许配置文件参数

def user_params
  params.require(:user).permit(
    #User Attribute Names,
    profile_attributes: [#Profile atrribute names]
  )

【讨论】:

  • 你回答的正是我想要的,但它给出了错误。请查看示例代码并建议:pastebin.com/9RLeQBMF
  • 你遇到的错误是什么,你能告诉我吗。
  • 我找到了错误的原因。感谢你的帮助。你真的解决了我的问题。
猜你喜欢
  • 1970-01-01
  • 2015-06-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多