我有一个包含条目的数据库,可以使用ActiveRecord提取这些条目。当前,使用类似post.to_yaml
的方法可以产生:
!ruby/object:Post
concise_attributes:
- !ruby/object:ActiveModel::Attribute::FromDatabase
name: id
value_before_type_cast: 1
- !ruby/object:ActiveModel::Attribute::FromDatabase
name: user
value_before_type_cast: efy5qC5YmJNml23JowOUrlmfN0D2
- !ruby/object:ActiveModel::Attribute::FromDatabase
name: content
value_before_type_cast: bol4
- !ruby/object:ActiveModel::Attribute::FromDatabase
name: location
value_before_type_cast: '123'
- !ruby/object:ActiveModel::Attribute::FromDatabase
name: timestamp
value_before_type_cast: '12:00'
new_record: false
我要返回的确切集合如下:record = Post.order(:timestamp).offset(15 * 0).first(15)
此返回的结果包含几个字段,这些字段将返回到Flutter应用程序。数据将填充一个具有诸如content
,date
和location
之类的字段的小部件,所有这些字段均由上述查询返回。
我可以使用Dart库解析YAML,但是是否有更好的方法来压缩返回的值,以便仅显示必要的字段?
答案 0 :(得分:1)
根据共享的描述,似乎您已从数据库中获取数据,现在只需要选择需要显示的特定字段即可。
根据当前情况,您可以使用类似以下内容的
:post.as_json(only: [:content, :name, :location])
否则,您可以通过使用select语句从数据库中选择特定属性来修改正在使用的查询。
Post.select(:name, :content, :location)
希望有帮助!