I was trying to create custom view pages in ROR as seen in
http://blog.hulihanapplications.com/browse/view/55-ruby-on-rails-multiple-model-form-generator
then i got some errors
(erb):6:in `template’: compile error (SyntaxError)
(erb):3: syntax error, unexpected $undefined
…orm", :locals => {:object => @<%= singular_name ).to_s); _er…
^
(erb):3: syntax error, unexpected ‘}’, expecting ‘)’
…s); _erbout.concat “, :f => f} %> \n\n<%= link_to ‘Show’, @”
^
(erb):5: syntax error, unexpected tIDENTIFIER, expecting ‘)’
…out.concat " %> |\n<%= link_to ‘Back’, "
^
(erb):6: syntax error, unexpected tIDENTIFIER, expecting ‘)’
; _erbout.concat(( plural_name ).to_s); _erbout.concat “_path %>\n”
^
(erb):6: unterminated string meets end of file
(erb):6: syntax error, unexpected $end, expecting ‘)’
; _erbout
^
My edit page is
Editing <%= singular_name %>
<%= render :partial => “_form”, :locals => {:object => @<%=
singular_name %>, :f => f} %>
<%%= link_to ‘Show’, @<%= singular_name %> %> |
<%%= link_to ‘Back’, <%= plural_name %>_path %>
My partial form “form” is
<% for column in object.class.columns %>
<% if column.name != "id" %>
<div class="field">
<div class="label">
<%= f.label "#{column.name}".to_sym %>
</div>
<% if column.type == :integer || column.type == :float ||
column.type == :string %>
<% if column.name =~ /_id$/ # is this a id/foreign key field %>
<% column_class = column.name.gsub(/_id$/,
‘’).classify.constantize %>
<% if column_class %>
<%= collection_select(object.class.name.underscore.to_sym,
column.name.to_sym, column_class.all, :id, :name, :prompt => true) %>
<% else %>
<%= f.text_field column.name.to_sym %>
<% end %>
<% else %>
<%= f.text_field column.name.to_sym %>
<% end %>
<% elsif column.type == :text %>
<%= f.text_area column.name.to_sym %>
<% elsif column.type == :datetime %>
<%= f.datetime_select column.name.to_sym %>
<% elsif column.type == :boolean %>
<%= f.check_box column.name.to_sym %>
<% else %>
<% # Unknown Column Type %>
<% end %>
<% end %>
<% end %>
This was the default edit page
Editing <%= singular_name %>
<%% form_for(@<%= singular_name %>) do |f| %>
<%%= f.error_messages %>
<% for attribute in attributes -%>
<%%= f.label :<%= attribute.name %> %>
<%%= f.<%= attribute.field_type %> :<%= attribute.name %> %>
<%%= f.submit 'Update' %>
<%% end %><%%= link_to ‘Show’, @<%= singular_name %> %> |
<%%= link_to ‘Back’, <%= plural_name %>_path %>