gpt4 book ai didi

ruby-on-rails - 许多用户对模型 'owned' 的 Rails 关联

转载 作者:行者123 更新时间:2023-12-04 05:08:35 29 4
gpt4 key购买 nike

我有一个简单的 rails 应用程序,它用作数字标牌应用程序的 cms。
在这个应用程序中,将有一个预定义的样式池,我想提供给所有用户。
每个样式都包括背景图片、一些 css 和一个视频。

我的目标是获得一个可以准备不同样式的设置,使用 rails admin 添加它们,每个用户都应该有一个菜单,他可以在其中选择一种样式,如 active_style 为他的帐户。

听起来很简单,但我遇到的问题是 之间的关联。用户 款式 模型。我尝试了几个小时不同的事情(has_many:/has_many_though/has_and_belongs_to_many),但我无法达到让每个用户都可以选择一个样式对象并将其设为 active_style 的地步,并且只允许 active_style 一次。

我只是想知道这样做的最佳方法是什么,如果有人可以提供帮助,我会很高兴。我对 rails 编程比较陌生,如果这看起来很愚蠢,请原谅。

最佳答案

我知道这听起来不直观,但我认为在这种情况下您想要的关联是“belongs_to”。我说这很不直观,因为说“用户属于活跃样式”听起来很奇怪,但是“has_one”不允许单个样式成为多个用户的活跃样式。

以下代码假设您的用户表中有一个“active_style_id”整数列,用于存储外键:

User < ActiveRecord::Base
belongs_to :active_style, class_name: 'Style'
end

这将让您执行以下操作:
style = Style.find(...)
user = User.create(active_style: style)
user.active_style # => style

关于ruby-on-rails - 许多用户对模型 'owned' 的 Rails 关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15187145/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com