FYI: When <table-plus> generates a "can't convert String into Integer" error

31 views
Skip to first unread message

Tim Griffin

unread,
Dec 30, 2011, 6:38:06 AM12/30/11
to hobo...@googlegroups.com
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

Reply all
Reply to author
Forward
0 new messages