2014-04-02 57 views
0

我有模式:FactoryGirl模型的id =>零

class CreateStores < ActiveRecord::Migration 
    def change 
    create_table :stores do |t| 
     t.integer :admin_id 
     t.string :name 
     t.string :subdomain 
     t.string :linked_domain 

     t.timestamps 
    end 
    end 
end 

和測試:

require 'test_helper' 

class Api::Be::UsersControllerTest < ActionController::TestCase 

    setup do 
    @admin = FactoryGirl.create :admin 

    @store = FactoryGirl.create :store 
    @store.ug_default = UgDefault.new 
    @store.save 

    Rails::logger.debug "HERE: #{@store.id}" 

    @customer = FactoryGirl.create :customer 
    @customer.userable_id = @store.id 
    @customer.save 
    end 

在日誌中我看到@store.id等於爲零。有什麼問題?

+0

你的模型怎麼樣? –

回答

0

它可能沒有得到保存。使用您的記錄器,輸出模型上是否有任何錯誤:

Rails.logger.debug "#{@store.errors.inspect}" 

在輸出結尾處查找消息。

+0

,@messages = {}>哪裏沒有錯誤,對吧? – cnaize

+0

正確,消息散列是空的。您是否在模型的before_save回調中返回false?在rails控制檯中使用相同的屬性,你可以創建一個實例嗎? – agmcleod

相關問題