如何将新记录添加到Rails控制台上在同一模型中创建的另一个表?

时间:2016-01-11 09:19:51

标签: mysql ruby-on-rails ruby ruby-on-rails-3

我使用此命令创建了一个模型

rails g model UserPost postId:string postDesc:string

比用

创建另一个表后
rails g migration CreateUser name:string email:string

所以,运行rails console,我只能在user_posts表上添加记录,例如

user=UserPost.create(post_id:"My Post", post_desc:"This is my post")

我的问题是知道如何在user表上添加新记录? 使用Sql,可以使用table_name作为

来完成
INSERT INTO TABLE user_posts values("My Post", "This is my post")

INSERT INTO TABLE users values("my_name", "my_email")

但是在Rails上,我认为它使用了模型的名称。

注意:rake db:migrate已在特定时间运行。

1 个答案:

答案 0 :(得分:0)

首先,您应该将user表的表名更改为users,因为它很方便。然后,您应该为您的用户表创建一个模型:rails g model user。然后,当您向帖子添加记录时,您将能够向用户表添加记录:User.create(name: 'my_name', email: 'my_email')

UPD 除非它是一个连接表,否则你应该为每个数据库表建立一个rails模型