当我生成灯具文件时,rails generate model Post title:string text:text
显示:
one:
title: MyString
text: MyText
two:
title: MyString
text: MyText
我想知道为什么会有2个,为什么他们被命名为“一个”和“两个”。
Here我看到使用“google”,“rubyonrails”和“parent / child”这样的名字;然而,按照生成帖子模型的教程,它只生成一个和两个......
经过更多研究,我发现我可能也对db / migrate文件感兴趣。我目前的理论是这些文件创建了我的数据结构......所以我不太确定是什么灯具。
我正在尝试使用
创建一个“学生”模型rails generate scaffold student
但它似乎没有:name作为其键之一。我正在研究灯具来添加数据列。
答案 0 :(得分:3)
关于您的问题的一些简短说明:
灯具是可以输入单元测试的数据。只要rails为控制器和模型生成相应的测试,就会自动创建它们。它们仅用于测试,在运行应用程序时实际无法访问。
默认情况下,Rails每次都会提供两个名为“一个”和“两个”的灯具。您可以随意更改它们。此外,当您使用生成器传递所需数据库列的键时,将进入灯具中的数据。在第一个例子中你使用了rails g model post title:string ...你创建了一个名为Post的模型并传递了两个键:title和:text。
<强>答案:强>
至于您的上一个问题,您可以快速解决问题 a)通过在命令行中键入以下内容来删除旧脚手架:
rails d scaffold Student
b)再次创建它,但这次使用你想要的键:
rails g scaffold Student name:string
答案 1 :(得分:0)
我首先要说的是,rails generate
命令生成的代码旨在成为部分应用程序的起点,帮助您快速上手。
那就是说 - 固定装置用于单元测试。它们为您提供了一种生成系统中已存在的一组对象的方法,因此您无需在测试开始时手动创建它们。
在这种情况下,one
和two
只是占位符。在真实的应用程序中,您可以使用在测试中更有意义的名称替换它们。
如果您希望在应用中添加数据列,则可能不是正确的方法。它们真的意味着在测试中使用,仅此而已。
答案 2 :(得分:0)
试试这个:
关于您的上一个问题,您可以通过以下方式快速解决问题:a)通过在命令行中键入以下内容来删除旧脚手架:
rails d scaffold Student
b) Creating it again but this time with the keys you want:
rails g scaffold Student name:string