I want to write out a series of records to a text file so that I can quickly edit them and then upload then again into the database. To do this I am using YAML and some code that looks like this: item = Item.find 153 File.open( ''item.yaml'', ''w'' ) do |out| YAML.dump( item, out ) end This dumps out all the field names and values which are stored in the attributes hash. The output looks something like this: - !ruby/object:Item attributes: image_height: '''' maximum_value: '''' minimum_value: '''' item_id: 153 default_value: '''' ... many more fields However I don''t want all these fields. How can I limit the YAML output to just include the fields that I want? I know that I can override to_yaml_properties to specify the fields that i want from a class. But that really only lets me choose whether I want to export @attributes or not. I think that I could override to_yaml_properties of @attributes. Something like this class Item class <<@attributes def to_yaml_properties # ....? end end end But I''m not too sure what I should write there? Or maybe I should be overriding def Item.@attributes.to_yaml ? Does anyone have any ideas? Thanks image_alignment: '''' display_format: Vertical minimum_number_responses: item_sub_text: '''' page_number: 5 row_text_width: email_address_yn: N survey_id: 153 other_yn: N random_answer_order_yn: N database_dsn: '''' image_width: '''' other_display_type: subitem_count: answer_total: item_text: "<span style=\"font-weight:bold\">When a good has positive network externalities, this means that when using the product:</span>" order_number: 26 item_alias: '''' image_path: '''' maximum_number_responses: maximum_length: item_type_id: 3 database_sql: '''' other_text: "Other, please specify" required_yn: N However there -- Posted via ruby-forum.com.