Rails模型嵌套表单,如何在2个模型中创建外键

时间:2017-07-13 09:20:13

标签: ruby-on-rails model chartkick

我正在为我在学校的项目做一个网页,用户可以列出他或她拥有的股票,并可以查看每周价格(我知道,不是更新的最佳频率)

我已经设法让chartkickcharjs在我的rails应用程序中工作,但我意识到我遗漏了一些东西。我试图绘制我的模型以显示价格变化。

目前我有以下型号:

用户

has_many :investment_stocks
has_many :investment_price

Investment_stock

belongs_to :user
belongs_to :investment_price 
belongs_to :advisor  

Investment_price

has_many :investment_stocks
has_many :users, through: :investment_stocks

移植

Investment_price

t.string :name
t.string :price
t.date :date

我的想法是手动更改可以在图表上引用和显示的每只股票的investment_price.price。但是由于用户有很多股票,我想知道我的表是否需要其他东西chartkickchartjs的工作方式是我似乎需要在图表上显示3个变量但我总是似乎只能在2左右工作

被修改

所以现在我有以下

用户模型

has_many :investment_stocks
has_many :investment_prices

Investment_stock模式

belongs_to :user
has_many :investment_prices, dependent: :destroy
accepts_nested_attributes_for :investment_prices

Investment_price模型

belongs_to :investment_stock, optional: true
belongs_to :user, optional: true

但是我很难添加嵌套表单来在investment_stock和investment_price表上创建user_id

investment_stocks controller

def new
@investment_stock = InvestmentStock.new
@investment_stock.investment_prices.build
end

def create
@investment_stock= InvestmentStock.new(investment_stock_params)
@investment_stock["user_id"]= current_user.id 

如何使用user_id出现在股票和价格表上?

1 个答案:

答案 0 :(得分:0)

好的,我认为你可以尝试一下: Investment_price模型 - > belongs_to:investment_stocks,belongs_to:user。 股票有价格,用户有股票和价格。