首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何格式化此PostgreSQL查询以使其能够使用db:migrate运行

如何格式化此PostgreSQL查询以使其能够使用db:migrate运行
EN

Stack Overflow用户
提问于 2020-03-30 07:29:15
回答 1查看 64关注 0票数 3

我想创建下面的表。我是通过从ActiveRecord运行SQL来实现的。

代码语言:javascript
复制
alter table items add column sumup numeric generated always as ( quantity * price + (quantity * price* fpa/100) ) stored;

这是正确的做法吗?

代码语言:javascript
复制
  def change
    create_table :items do |t|
      t.string :itemName
      t.string :prom
      t.string :promCode
      t.string :baseCode
      t.string :desc
      t.numeric :fpa
      t.numeric :price
      t.integer :quantity
      t.string :monadaMe
      t.string :familys

      t.timestamps
    end
    ActiveRecord::Base.connection.execute(" alter table items add column sumup numeric generated always as ( quantity * price + (quantity * price* fpa/100) ) stored;")
  end
end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-30 16:20:00

仅创建新列:

代码语言:javascript
复制
rails generate migration AddSumupToItems sumup:float

在您的model中,添加:

代码语言:javascript
复制
before_save :calculate_sumup

def calculate_sumup
  sumup = ( quantity * price + (quantity * price* fpa/100) )
  self.sumup = sumup
end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60922051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档