hmm, it might be worth special-casing :state outside of this one-liner, since it was already a bit tangled before the change :)

maybe replace this line with something like:
```ruby
want_state = !! field_names.delete(:state)
results = Hash[field_names.map {|field| [field, (asset ? asset.send(field) : '')]}]
results[:state] = asset.state.name if want_state
```
I haven't tested that but think it should work (or if it needs tweaking should be fairly close to what we want)