Michel :
> create_table :player do |t|
> t.column :id, :integer
> t.column :login, :string, :null => false
> t.column :password, :string, :null => false, :limit => 32
> t.column :email, :string, :null => false
> t.column :joined, :datetime
> t.column :lastup, :timestamp
> t.column :online, :boolean
> end
>
> Je lance la migration, après quelques corrections dans ma configuration, je
> bloque sur :
>
> == RubyThud: migrating
> ========================================================
> -- create_table(:player)
> rake aborted!
> Mysql::Error: #42000You have an error in your SQL syntax; check the manual
> that corresponds to your MySQL server version for the right syntax to use
> near '(11), `login` varchar(255) NOT NULL, `password` varchar(32) NOT NULL,
> `email` va' at line 1: CREATE TABLE player (`id` int(11) DEFAULT NULL
> auto_increment PRIMARY KEY(11),
create_table va te créer automatiquement une clé primaire id
sauf si tu lui spécifie de ne pas le faire (:id => false). Or
tu as également déclaré une colonne id.
Rails va te générer le `id` int(11) DEFAULT NULL auto_increment PRIMARY KEY
ta déclaration supplémentaire va rajouter le (11). D'où la belle
erreur de syntaxe MySQL.
> Quelqu'un sait ? C'est un bug de rake ? Si oui il y a eu une correction ?
D'autre part, si tu peux/souhaites suivre les conventions de
Rails, le nom de ta table sera 'players'.
-- Jean-François.
--
À la renverse.
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---