Bug #24046
Foreman's HasManyCommon concern uses 'id' for a method Rails expects to return a string
Description
Foreman HasManyCommon concern uses 'id' as a value of last resort for the name of an attribute. But Rails expects this value to a return a string. This causes a problem for Katello. Take a look at the output here in Katello:
irb(main):001:0> Host.first Hirb Error: undefined method `gsub' for 2:Integer </rep> Where's that coming from? <pre> irb(main):006:0> Host.first.content_facet_attributes.to_s => 2 irb(main):007:0> Host.first.content_facet_attributes.to_s.is_a?(String) => false </pre> Foreman should use a method that returns string as a last resort.
Associated revisions
History
#1
Updated by The Foreman Bot almost 5 years ago
- Assignee set to Stephen Benjamin
- Status changed from New to Ready For Testing
- Pull request https://github.com/theforeman/foreman/pull/5732 added
#2
Updated by Tomer Brisker almost 5 years ago
- Legacy Backlogs Release (now unused) set to 353
#3
Updated by Stephen Benjamin almost 5 years ago
- % Done changed from 0 to 100
- Status changed from Ready For Testing to Closed
Applied in changeset ae96cb70130968bdcc8b7a9a9af7edc7c6e0d9a8.
fixes #24046 - return id as str for name as last resort
Foreman HasManyCommon concern uses 'id' as a value of last resort for
the name of an attribute. But Rails expects this value to a return a
string. This causes a problem for Katello. Take a look at the output
here in Katello:
```
irb(main):001:0> Host.first
Hirb Error: undefined method `gsub' for 2:Integer
```
Where's that coming from?
```
```