Ajax и Json с рельсами
Я следовал руководству Хартла по Rails, где он делает Ajax, используя RJS и отправляя javascript в ответ, который будет выполнен на стороне клиента, для редактирования DOM.
Но что делать, если вы хотите, чтобы JSON отправлял в ответе, а не отправлял javascript. Это также означает, что javascript для управления DOM уже должен быть в html-файле на клиенте. Есть ли учебник, столь же хороший, как книга Хартла о том, как это сделать в Rails. Предположительно он будет использовать Jquery и некоторые другие вещи, возможно, о которых я не слышал, чтобы код не содержал миллион строк?
2 ответа
Моя лучшая попытка найти ответ - это то, что он действительно зависит от объема и сложности того, чего вы пытаетесь достичь. Как правило, JSON отображается в представлениях. Если ваше приложение не требует от вас динамического извлечения JSON, то есть вы можете загрузить все это при первоначальном отображении представления, затем вы можете установить переменную экземпляра в контроллере вашего представления следующим образом @my_json = some_object.to_json()
Тогда ваша переменная экземпляра доступна на ваш взгляд
<script type = 'text/javascript'>
var theJSON = <%= @my_json %>
</script>
Теперь ваши данные доступны в DOM, хорошо проанализированы в JSON.
Если ваше приложение требует, чтобы вы динамически извлекали JSON после загрузки контроллера / представления, то вам, вероятно, следует изучить использование AJAX для вызова метода конкретного контроллера, который возвращает желаемый JSON.
Вот хороший RailsCast, который, как мы надеемся, поможет вам на пути передачи данных в Javascript