Как показать форму при загрузке - PullRequest
0 голосов
/ 07 января 2019

Как показать форму при загрузке. Теперь я могу видеть поля формы по нажатию кнопки (добавить keykills). Я хочу, чтобы все функции работали вместе. При загрузке я хочу увидеть форму и нажать «добавить ключевой навык» или «удалить ключевой навык», которую следует добавить и удалить (теперь при нажатии кнопки «добавить или удалить» она работает, но не видит форма при загрузке, только при нажатии «добавить ключ навык» я могу увидеть форму)

$(function()
{
    function check_to_hide_or_show_add_key_skill_link()
    {
        if ($('#key_skills .nested-fields:visible').length == 4) {
            $('#key_skills .links a').hide();
        } else {
            $('#key_skills .links a').show();
        }
    }

    $('#key_skills').on('cocoon:after-insert', function()
    {
        check_to_hide_or_show_add_key_skill_link();
    });

    $('#key_skills').on('cocoon:after-remove', function()
    {
        check_to_hide_or_show_add_key_skill_link();
    });

    check_to_hide_or_show_add_key_skill_link();
});

Моя форма Ключевые навыки *

<div id="key_skills">
  <%= f.simple_fields_for :key_skills do |key_skill| %>
    <div class="nested-fields">
      <div class="field">
        <%= f.input :name , input_html: { class: 'form-control keySkill', required: true }%>
          <%= f.input :relevant_experience, input_html: { class: 'form-control', required: true } %>
            <%= link_to_remove_association "Remove Skill", f %>
      </div>
    </div>
    <% end %>
      <div class="links">
        <%= link_to_add_association 'Add Key Skill', f, :key_skills, class: "links" %>
      </div>
</div>

Это мой текущий вывод. По нажатию кнопки «Добавить ключ» я получу форму, но я хочу ее загрузить) enter image description here

1 Ответ

0 голосов
/ 07 января 2019

Поскольку вы не предоставляете много информации, я понятия не имею, как называется верхний элемент, но давайте предположим, что это Job, а задание имеет много key_skills.

В вашем JobsController есть метод create, более или менее следующим образом:

def create
  @job = Job.new 
end 

Если вы хотите сразу добавить навык ключа для заполнения, вы можете просто написать

def create
  @job = Job.new 
  @job.key_skills.build 
end 

(который добавит пустой ключ-навык для заполнения).

Проблема, связанная с хранилищем кокона: https://github.com/nathanvda/cocoon/issues/420

...