如何在rails中创建模型

时间:2011-10-26 02:56:48

标签: ruby-on-rails model gem

我正在使用parseresource gem,它说我需要创建一个模型。

创建模型:

class Post < ParseResource
  fields :title, :author, :body

  validates_presence_of :title
end

我只知道如何生成模式,它总是继承ActiveRecord :: Base。我应该在命令行中键入什么来创建此模型?

4 个答案:

答案 0 :(得分:4)

在这种情况下,您似乎只需要在您尝试创建的模型命名的/app/models目录中创建单个文件。

Rails及其生成器附带的普通模型生成代码不适用于此处,因为此gem专门用作Parse.com API的“包装器”。

来自the project's home page

  

ParseResource可以轻松地与Parse.com的REST API进行交互。它遵循ActiveRecord模式。 ParceResource完全符合ActiveModel,这意味着您可以使用验证和Rails表单。

看起来您所做的就是创建一个从ParseResource开始的单个文件,然后与它进行交互,就像它是一个普通的ActiveRecord模型一样。

看起来非常简单,但我要提醒作者在文档中说:

  

ParseResource是全新的。测试覆盖率不错。   这是我的第一颗宝石。害怕。

小心并确保通过项目issues page in Github报告您发现的任何问题。

答案 1 :(得分:4)

我认为你在寻找的是:

rails generate model Post title:string author:string blob:text

然后将继承从ActiveRecord更改为从创建的post.rb文件中的ParseResource继承。

class Post < ActiveRecord::Base

成为

class Post < ParseResource

我没有足够的关于模型或ParseResource的详细信息以获得更好的答案。 我希望尽管有所帮助。

如果您是Ruby和/或Rails的新手,我建议您继续介绍rails。 http://guides.rubyonrails.org/getting_started.html 要么 http://ruby.railstutorial.org/ruby-on-rails-tutorial-book

干杯!

答案 2 :(得分:2)

除非parseresource gem包含自定义生成器,否则我认为你必须生成一个标准的ActiveRecord模型,然后编辑它以继承ParseResource。

作为另一种选择,您可以通过在app / models下创建post.rb文件并将模型代码放在那里(任何体面的文本编辑器都可以正常工作)从头开始创建模型。请记住,没有什么可以强迫你使用发电机,它们只是为了让你的生活更轻松。

答案 3 :(得分:1)

轨道生成模型,后跟您的模型名称,然后是具有相应数据类型和大小的字段

下面是一个详尽的示例。

rails generate model MyModel some_id:integer{20} some_name:string{255}
some_text:text some_int:integer{1} some_deci:decimal{10,2}

您还可以具有其他数据类型,例如布尔,日期,时间,日期时间,浮点数,二进制。