app/views/improvements/_form.html.erb
<%= form_with(model: improvement.becomes(Improvement), local: true) do |form| %>
<% form.object = improvement.becomes(improvement.class) %>
<%= render 'layouts/errors', errors: improvement.errors %>
<div class="field">
<%= form.label :playbook %>
<div class="control">
<%= select_playbook(form) %>
</div>
</div>
<div class="field">
<%= form.label :advanced %>
<%= form.check_box :advanced %>
</div>
<div class="field">
<%= form.label :description %>
<div class="control">
<%= form.text_field :description, class: 'input' %>
</div>
</div>
<div class="field">
<%= form.label :type %>
<div class="control">
<div class="select">
<%= form.select(:type, Improvement::IMPROVEMENT_TYPES) %>
</div>
</div>
</div>
<div class="field">
<%= form.label :rating %>
<div class="control">
<div class="select">
<%= form.select(:rating, Improvement.ratings.keys, include_blank: true) %>
</div>
</div>
</div>
<div class="field">
<%= form.label :stat_limit %>
<div class="control">
<%= form.number_field :stat_limit, class: 'input' %>
</div>
</div>
<div class="actions">
<%= form.submit class: 'button is-primary' %>
</div>
<% end %>