1

Ich arbeite an meiner App (Rails 3.2, PostgreSQL 9.1) auf localhost und alles funktioniert mir dort gut, also habe ich mich entschlossen, die App zur Produktion nach Heroku zu deployen.Rails, PostgreSQL, Heroku - Wie ändert man die ": null => false" -Regel?

Nach dem erfolgreichen Einsatz der App habe ich versucht, ein neues Element zu erstellen und bekam diese Fehlermeldung:

ActiveRecord::StatementInvalid (PG::Error: ERROR: null value in column "persistence_token" violates not-null constraint 

Es geht um den Tisch Users (Verwendung Authlogic gem). Dies ist das Beispiel für den migrationskritischen Teil:

class CreateUsers < ActiveRecord::Migration 
    def self.up 
    create_table :users do |t| 
     t.string :name,    :null => false 
     t.string :email,    :null => false           
     t.string :crypted_password, :default => nil, :null => true    
     t.string :password_salt,  :default => nil, :null => true   
     t.string :email,    :default => nil, :null => true   
     t.string :persistence_token, :null => false  
     t.string :single_access_token, :null => false    
     t.string :perishable_token, :null => false    
     t.datetime :last_request_at          
     t.datetime :current_login_at         
     t.datetime :last_login_at          
     t.string :current_login_ip         
     t.string :last_login_ip          

     t.timestamps 
    end 
    end 
end 

Was könnte dieses Problem verursacht haben? Ich meine, ich sehe in der Migration ist die Regel :null => false und die Fehlermeldung sagt über den Nullwert in dieser Spalte gespeichert, aber wie ist es möglich auf localhost diese Arbeit gut und auf Heroku nicht?

Und, wie könnte ich das beheben? Meine erste Idee war, eine neue Migration zu erstellen, wo ich für diese Spalte :null => true eingerichtet, aber ist es richtig?

+0

Einstellung ': null => true' erlaubt nur' null' Werte in der Spalte, das ursprüngliche Problem Abschattung und eine Dose öffnen Würmer. – Femaref

Antwort

0

stelle ich den Standardwert DEFAULT '' und der Fehler ist weg ...

Verwandte Themen