Ruby on rails 由于某些原因,未创建表

Ruby on rails 由于某些原因,未创建表,ruby-on-rails,Ruby On Rails,我运行了以下命令: rails generate scaffold order name:string address:text email:string pay_type:string rails generate migration add_order_id_to_line_item order_id:integer rake db:migrate 由于某些原因,db/schema.db不显示orders表。我甚至尝试将其手动放置在schema.db中并再次迁移,但仍然无法访

我运行了以下命令:

rails generate scaffold order name:string address:text email:string pay_type:string   
rails generate migration add_order_id_to_line_item order_id:integer    
rake db:migrate
由于某些原因,db/schema.db不显示orders表。我甚至尝试将其手动放置在schema.db中并再次迁移,但仍然无法访问/orders:(

有人知道这是什么原因吗

页面访问错误:
移徙产出:


您的迁移文件20110623001141\u cart.rb中的\u combine\u items\u没有正确的类包装器,此外,它内部有不应该存在的方法

class CombineItemsInCart < ActiveRecord::Migration
    def self.up
        # replace multiple items for a single product in a cart with a single item
        Cart.all.each do |cart|
        # count the number of each product in the cart
            sums = cart.line_items.group(:product_id).sum(:quantity)

            sums.each do |product_id, quantity|
                if quantity >1
                    # remove individual items
                    cart.line_items.where(:product_id=>product_id).delete_all

                    # replace with a single item
                    cart.line_items.create(:product_id=>product_id, :quantity=>quantity)
                end
            end
        end
    end

    def self.down
        # split items with quantity>1 into multiple items
        LineItem.where("quantity>1").each do |line_item|
            # add individual items
            line_item.quantity.times do
                LineItem.create :cart_id=>line_item.cart_id,
                                :product_id=>line_item.product_id, :quantity=>1
            end

            # remove original item
            line_item.destroy
        end``
    end
end
类组合ItemsInCart1
#删除单个项目
cart.line\u items.where(:product\u id=>product\u id).全部删除
#替换为单个项目
cart.line\u items.create(:product\u id=>product\u id,:quantity=>quantity)
结束
结束
结束
结束
def自动关闭
#将数量大于1的项目拆分为多个项目
行项目。其中(“数量>1”)。每个do行项目|
#添加单个项目
行_item.quantity.times do
LineItem.create:cart\u id=>line\u item.cart\u id,
:product\u id=>line\u item.product\u id,:quantity=>1
结束
#删除原始项目
行_item.destroy
结束``
结束
结束

您似乎在20110626203934_add_order_to_line_item.rb中也有一个重复项,它正在将一个列添加到20110626181924_add_order_id_to_line_item.rb中。请删除其中一个,然后再次尝试迁移。

有错误吗?您确定它不应该是:
将_order_id_添加到_line_items
我也尝试过,但仍然不起作用:(你应该添加你的迁移和任何stacktrace或erroroh文件本身?一秒钟后我会发布github链接哇谢谢!这修复了它,我的db迁移现在可以工作了!:)我删除了combine_items迁移文件并重新创建以修复错误。