У меня есть метод, который должен пройти через хэш и проверить, существует ли каждый ключ в таблице моделей, иначе он удалит ключ/значение.Как проверить, имеет ли модель определенный столбец/атрибут?
, например
number_hash = { :one => "one", :two => "two" }
и номер таблицы имеет только один столбец: так: два будут удалены.
Как проверить, имеет ли модель атрибут или нет?
Для получения бонусных очков используйте 'Hash # select':' number_hash.select {| key, value | Number.column_names.include? key} ' – hgmnz
В Rails 3.2+ используйте' number.has_attribute? ', который принимает символ или строку –
Я верю, что если объект делегирует метод другому объекту, этот метод ошибочно предложит, чтобы столбец существовал. Я проверял свои модели на те, у которых был «пользователь», но вместо этого нужно было искать 'user_id', поскольку некоторые модели делегировали пользователя. – MattyB