Mike2
(Mike)
May 10, 2010, 4:24pm
1
Can anybody take a quick look at the following problem, occurring with
beta3 on Ruby 1.9.2 ?
http://gist.github.com/396208
I used the scaffold generator for the above, so this is just using
defaults (the example is in an index view; specifying an action works
but the shorter version doesn't).
Also, 'entity' does have a primary key.
Mike2
(Mike)
May 10, 2010, 11:23pm
2
This is weird.
Check this out:
http://gist.github.com/396575
See how "link_to 'Show'" is output (Line 39)? Especially compared to
the other link_to calls?
I changed my view template to the following and it works:
http://gist.github.com/396679
In other words, I just threw a semi-colon in there and it works. I
don't know exactly where this should be fixed . . .
Mike2
(Mike)
May 11, 2010, 1:05am
3
I updated the gist with additional information:
http://gist.github.com/396679
I'm still drilling down into this but the problem is happening inside
the erubis gem when the template is parsed.
When the variable name is 'todx' the output includes:
@output_buffer.safe_concat ('</td>\n <td>');
@output_buffer.append= ( link_to 'Show', todx );
@output_buffer.safe_concat ('</td>\n <td>');
But when the variable name is 'todo' the output is:
@output_buffer.safe_concat ('</td>\n <td>');
@output_buffer.append= link_to 'Show', todo
@output_buffer.safe_concat ('</td>\n <td>');
It's mangled; I wonder if it's matching "do" somewhere?
Mike2
(Mike)
May 11, 2010, 1:41am
4
Okay, last one.
I spoke too soon. It wasn't in the erubis gem, but a call back to
ActionView::Template::Handlers::Erubis's add_expr_literal method and a
false match on the pattern BLOCK_EXPR. See:
http://gist.github.com/396799
I think the do pattern may need word boundaries or whitespace
characters surrounding it. I should probably report this
somewhere . . .