<%%= simple_form_for [:<%= options[:namespace] %>, <%= class_name.underscore %>], html: { class: "<%= class_name.underscore %> form" } do |f| %> <%- bo_model.columns.each do |column| -%> <%- next if excluded_columns.include?(column.name.to_sym) || bo_model.reflect_on_all_associations.map(&:foreign_key).include?(column.name) -%> <%- if column.type == :datetime -%> <%%= render(Input::DatetimeComponent.new(item: <%= class_name.underscore %>, field: '<%= column.name %>', form: f)) %> <%- else -%> <%%= f.input :<%= column.name %>,label: I18n.t('bo.<%= class_name.underscore %>.attributes.<%= column.name %>') %> <%- end -%> <%- end -%> <%- belongs_to_assoc.each do |association| -%> <%%= f.association :<%= association.name.to_s.singularize %>, collection: <%= association.klass.name %>.all.map { |item| [item.<%=bo_model_title(association.klass.name.constantize)%>, item.id] } %> <%- end -%> <%- rich_text_assoc.each do |association| -%> <%%= f.rich_text_area :<%= association.name.to_s.singularize.to_s.remove('rich_text_')%> %> <%- end -%> <%- storage_assoc.each do |association| -%> <%%= render(Input::FileComponent.new(item: <%= class_name.underscore %>, field: '<%= association.name.to_s.singularize.to_s.remove('_attachment') %>', form: f)) %> <%- end -%> <%- has_one_assoc.each do |association| -%> <%%= render(Forms::HasOneFormComponent.new(title: I18n.t('bo.<%= association.name %>.one') )) do %> <%%= f.simple_fields_for :<%= association.name.to_s %> do |<%= association.name.to_s %>_form| %> <%- association.klass.column_names.each do |column| -%> <%- next if excluded_columns.include?(column.to_sym) || bo_model.reflect_on_all_associations.map(&:foreign_key).include?(column) -%> <%- simple_form_alias = simple_form_conflict_keywords.include?(column) ? ',as: :string' : nil -%> <%%= <%= association.name.to_s %>_form.input :<%= column %> <%= simple_form_alias %> %> <%- end -%> <%% end %> <%% end %> <%- end -%> <%- has_many_assoc.each do |association| -%> <%%= render(Forms::HasManyFormComponent.new(title: I18n.t('bo.<%= association.name.to_s.singularize%>.others') )) do %> <%%= f.select :<%= "#{association.name.to_s.singularize}_ids" %>, <%= association.klass.name %>.all.map { |item| [item.<%=bo_model_title(association.klass.name.constantize)%>, item.id] }, { include_blank: true }, multiple: true, data: { controller: 'ts--select' } %> <%% end %> <%- end -%> <%%= render(Forms::SubmitButtonComponent.new) %> <%% end %>