I'm just posting some info here that might be helpful to others using the <table-plus> tag who happen to get a "
can't convert String into Integer" error.
In my Hobo 1.3 case, I ran into an issue displaying a <table-plus> using a manually-created array of OpenStruct records (pulled from a legacy database table) that did not include <xxx-heading> tags. Hobo continually reported a "can't convert String into Integer" error when processing the <table-plus> tag.
In a model file, I was using this approach:
def get_documents
#Setup a new array to hold the document records
table = Array.new
documents = Document.find_by_sql('SELECT dbo.LLAttrBlobData.ID AS [doc_id],... ... ')
r = 0
documents.each do |doc|
table[r] = OpenStruct.new(:doc_id => doc.doc_id,
:filing_date => doc.filing_date,
:filing => doc.filing)
r = r + 1
end
return table
end
And in the view:
<table-plus:get_documents fields="doc_id,filing_date,filing">
</table-plus:get_documents>
Hobo generated
"can't convert String into Integer"
Bryan indicated that "with many versions of Hobo, you need to specify the headings:"
So, I added heading tags to the <table-plus> call as follows:
<table-plus:get_documents fields="doc_id,filing_date,filing">
<doc-id-heading:>ID</doc-id-heading:>
<filing-date-heading:>filing date</filing-date-heading:>
<filing-heading:></filing-heading:>
</table-plus:get_documents>
which made <table-plus> work as expected.
Bryan also notes: "it broke in 1.3 because of the internationalization changes. It's something we need to add to the test suite."
This issue has been reported as Hobo Ticket 991.
Tim