Ruby on rails 如何在rails中插入和从db获取数据?

Ruby on rails 如何在rails中插入和从db获取数据?,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,all返回数据库中当前的所有Post,作为Post记录数组,我们将其存储在名为@posts的实例变量中。我只想获取用户的特定数据。那么我该怎么做呢?@posts=specific\u user.posts.all 您需要确保post模型属于用户模型,并且用户模型有许多post首先,您需要生成迁移 @posts = Post.all 然后,运行rakedb:migrate,以便posts数据库表有一个user\u id列 现在,您需要修改user.rb和post.rb模型以反映关联 rails

all返回数据库中当前的所有Post,作为Post记录数组,我们将其存储在名为@posts的实例变量中。我只想获取用户的特定数据。那么我该怎么做呢?

@posts=specific\u user.posts.all


您需要确保post模型属于用户模型,并且用户模型有许多post

首先,您需要生成迁移

@posts = Post.all
然后,运行
rakedb:migrate
,以便
posts
数据库表有一个
user\u id

现在,您需要修改
user.rb
post.rb
模型以反映关联

rails g migration add_user_id_to_posts user_id:integer

我希望这很容易理解。了解。

如果要筛选结果,可以使用“where”方法

例如,要按用户名筛选帖子,请尝试:

# Let fetch User with ID 1
user = User.find(1)
# Now, we can fetch posts related to this user like
@posts = user.posts
# Or like this
@posts = Post.where(:user_id => 1).all
您还可以在“find”方法上使用:conditions符号,在本例中传递SQL

例如,要按用户名和公共标志进行筛选,请尝试:

@posts = Posts.where(:username => "jondoe")

你真的需要多解释一下你的问题。你有用户模型吗?此用户模型是否与Post模型有关系?放码过来。是的,我有用户模型,但它与post模型没有关系。我如何建立两个模型之间的关系?首先阅读Rails指南(此处:),然后一切(甚至提出适当的问题;-)都应该更容易。我如何建立两个模型之间的关系?这并不粗鲁,但这是关于Rails的教程的第一部分。请先做,否则你会问更多的问题,仍然不明白你在做什么。。。
@posts = Posts.where(:username => "jondoe")
@posts = Posts.all(:conditions => "username='johndoe' AND public=1")