rails db:migrate NameError:未初始化的常量

时间:2017-09-27 02:53:02

标签: ruby-on-rails postgresql

我认为我在开发时进行了迁移,然后生产正常 然后,我设置了另一个开发框,似乎无法运行迁移,我得到了 'NameError: uninitialized constant ChangeUpcomingEventsView'

class UpcommingEvents < ActiveRecord::Migration[5.1]
  def up
    self.connection.execute %Q( CREATE OR REPLACE VIEW upcoming_events AS
       SELECT   v.name                                  "venue_name",
                to_char(e.start_date,'Day (DD Mon)')    "day",
                to_char(e.start_date,'Dy')              "day",
                to_char(e.start_time,'HH24:MI')         "time",
                e.title                                 "event_name",
                e.description                           "event_description",
                e.price,
                e.url,
                url_ticket
        FROM    events e,
                venues v
        WHERE   v.id = e.venue_id
        AND     e.status = 'L'
        AND     e.start_date
        BETWEEN (CURRENT_DATE)::date
        AND     (CURRENT_DATE + INTERVAL '7 day')::date
        order by start_date, e.start_time, replace(v.name,'The ','')
    )
  end

  def down
    execute "DROP VIEW upcoming_events"
  end
end

我的ruby版本为2.4.1,我的rails版本为5.1.3

我做错了什么?

2 个答案:

答案 0 :(得分:3)

您的Class名称为UpComming,其中包含m

只有一个拼写错误。
试一试。

答案 1 :(得分:0)

将类名称更改为ChangeUpcomingEventsView。