J'essaie de générer un nouveau modèle et d'oublier la syntaxe pour référencer l'ID d'un autre modèle. Je le rechercherais moi-même, mais je n'ai pas compris, parmi tous mes liens de documentation Ruby on Rails, comment trouver la source définitive.
$ rails g model Item name:string description:text
(et ici soit reference:product
ou references:product
). Mais la meilleure question est de savoir où ou comment rechercher facilement ce genre de bêtise à l'avenir?
Remarque: J'ai appris à la dure que si je saisis mal l'une de ces options et que j'exécute ma migration, Ruby on Rails va complètement visser ma base de données ... et rake db:rollback
est impuissant face à de tels bousculades. Je suis sûr que je ne comprends tout simplement pas quelque chose, mais jusqu'à ce que je le fasse ... les informations "détaillées" retournées par rails g model
me laissent encore grattant ...
rails generate model --help
Réponses:
Voir la section des définitions de tableau .
la source
:reference
ou:references
dans votre réponse ou une explication sur la façon de le transmettre aux générateurs dans le lien que vous avez fourni?!?string
diffère-text
t-il de ?uniq
etindex
(et tous les types) sont documentés dans l'utilisation derails generate model
. Exécutezrails g model
pour voir les documents d'utilisation.Pour créer un modèle qui en référence un autre, utilisez le générateur de modèle Ruby on Rails:
Cela produit app / models / wheel.rb :
Et ajoute la migration suivante:
Lorsque vous exécutez la migration, les éléments suivants se retrouveront dans votre db / schema.rb :
En ce qui concerne la documentation, un point de départ pour les générateurs de rails est Ruby on Rails: un guide de la ligne de commande Rails qui vous pointe vers la documentation API pour en savoir plus sur les types de champs disponibles.
la source
$ rails g model Item name:string description:text product:references
Moi aussi, j'ai trouvé les guides difficiles à utiliser. Facile à comprendre, mais difficile à trouver ce que je cherche.
De plus, j'ai des projets temporaires sur lesquels j'exécute les
rails generate
commandes. Ensuite, une fois que je les fais travailler, je les exécute sur mon vrai projet.Référence pour le code ci-dessus: http://guides.rubyonrails.org/getting_started.html#associating-models
la source
N'oubliez pas de ne pas mettre en majuscule votre texte lors de l'écriture de cette commande. Par exemple:
Écris:
N'écris pas:
Au moins, c'était un problème pour moi.
la source
model
qui fait référence au générateur. Ça varails g model Product …
.)http://guides.rubyonrails.org devrait être un bon site si vous essayez de passer à travers les éléments de base de Ruby on Rails.
Voici un lien pour associer des modèles pendant que vous les générez: http://guides.rubyonrails.org/getting_started.html#associating-models
la source
Il est très simple dans ROR de créer un modèle qui référence d'autres.
rails modèle g Nom de l'élément: chaîne description: texte produit: références
Ce code ajoutera la colonne 'product_id' dans la table Item
la source
Il existe de nombreux types de données que vous pouvez mentionner lors de la création d'un modèle, par exemple:
syntaxe:
la source
J'ai eu le même problème, mais mon code était un peu différent.
Et ma forme ressemblait à ceci:
C'était totalement correct, donc je ne savais pas comment le comprendre.
Enfin, il suffit d'ajouter
après
travaillé pour moi.
la source
:integer
,:string
, etc ...).