Sha256: 19fbfddac6e9ef7c9f7625613c5987e5341058d9932b4422eafdc9435cc29945

Contents?: true

Size: 1.63 KB

Versions: 24

Compression:

Stored size: 1.63 KB

Contents

<% if class_path.last.present? -%>
require_relative "../<%= class_path.last.underscore %>"

<% end -%>
<% module_namespacing do -%>
class <%= class_name %> < <%= [feature_package_name, "ResourceRecord"].join "::" %>
  # add concerns above.

  # add model configurations above.

<% attributes.select(&:reference?).each do |attribute| -%>
  belongs_to :<%= attribute.name %><%= ", polymorphic: true" if attribute.polymorphic? %><%= ", class_name: \"#{attribute.attr_options[:class_name]}\"" if attribute.attr_options[:class_name] %>
<% end -%>
  # add belongs_to associations above.

  # add has_one associations above.

  # add has_many associations above.

<% attributes.select(&:attachment?).each do |attribute| -%>
  has_one_attached :<%= attribute.name %>
<% end -%>
<% attributes.select(&:attachments?).each do |attribute| -%>
  has_many_attached :<%= attribute.name %>
<% end -%>
  # add attachments above.

  # add scopes above.

<% attributes.select(&:required?).each do |attribute| -%>
  <%- next if attribute.reference? || attribute.rich_text? || attribute.token? || attribute.password_digest? -%>
  validates :<%= attribute.name %>, presence: true
<% end -%>
  # add validations above.

  # add callbacks above.

  # add delegations above.

<% attributes.select(&:rich_text?).each do |attribute| -%>
  has_rich_text :<%= attribute.name %>
<% end -%>
<% attributes.select(&:token?).each do |attribute| -%>
  has_secure_token<% if attribute.name != "token" %> :<%= attribute.name %><% end %>
<% end -%>
<% if attributes.any?(&:password_digest?) -%>
  has_secure_password
<% end -%>
  # add misc attribute macros above.

  # add methods above.
end
<% end -%>

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
plutonium-0.14.1 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.14.0 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.13.3 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.13.2 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.13.1 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.13.0 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.14 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.13 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.12 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.11 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.10 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.9 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.8 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.7 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.5 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.4 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.3 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.2 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.1 lib/generators/pu/res/model/templates/model.rb.tt
plutonium-0.12.0 lib/generators/pu/res/model/templates/model.rb.tt