What am I doing wrong?

Hello,

I'm trying to display chat messages from different users, and the
content is to be read from respective partials.
When I render the partials, I get the following error: `@...' is not
allowed as an instance variable name
This is the view:

<% for contact in @contacts %>
  <div id="chat_content_<%= contact.partner_id%>">
   <%= render(:partial => contact.partner_id) %>
  </div>
  <div>
   <% form_tag ... do %>
    . . .
   <% end %>
  </div>
<% end %>

Hello,

I'm trying to display chat messages from different users, and the
content is to be read from respective partials.
When I render the partials, I get the following error: `@...' is not
allowed as an instance variable name
This is the view:

<% for contact in @contacts %>
<div id="chat_content_<%= contact.partner_id%>">
  <%= render(:partial => contact.partner_id) %>

Are you partial names just numeric values ? That won't work because
instance/local variables get created for you named after the partial
and you can't have an instance variable called @123

Fred

Hi Aldric,

Sounds like you need to render the partial and pass in the variable as
a local variable:

that's what I also thought, but I resolved the problem by using
a different formating for 'mypatrial', and not contact.partner_id. The
problem is that not all 'partner_ids' also form a valid partial name,
since there exist some signs(like -, $ ...) which are not allowed in
file names.

Thanks for the help.