Как получить доступ к атрибутам модели Rails внутри JavScript? - PullRequest
0 голосов
/ 11 февраля 2020
<%= form_for(@mymodel, remote: true, html: { id: 'match_form' }) do |f| %>
        <!-- I need to check if @mymodel.match_id matches the value generated by a controller function -->
   <%= f.submit 'Save', class: 'btn btn-primary', id: 'match_submit', style: "width:38px;padding:0px" %> 
   <%= button_tag 'Cancel', class: 'btn btn-secondary', id: 'match_cancel', style: "width:52px;padding:0px" %>
<% end%>


<script type='text/javascript'>
    $(function() {
      $(document).on("click", "#match_submit", function(event){
        $.ajax('my_controller_method', {
          type: 'GET',
          dataType: 'script',
          data: {
            mid: $("#").val(),  // how do I pass @mymodel.match_id here?
          },
          error: function(jqXHR, textStatus, errorThrown) {
          return console.log("AJAX Error: " + textStatus);
        }
      });      
    });
  </script>

У меня есть форма Rails, которая представляет модель, как показано выше.

Как получить доступ к атрибутам модели внутри блока кода JavaScript, показанного выше?

1 Ответ

0 голосов
/ 11 февраля 2020

Вы также можете использовать erb внутри javascript:

mid: <%= @mymodel.match_id %>,

Или вы можете сериализовать свой объект с помощью gon gem (https://github.com/gazay/gon)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...