Если ответ js, что бы сделал браузер?
Это полностью зависит от браузера и среды javascript пользователей. Ваше приложение возвращает js, браузер будет обрабатывать его любым способом, который он считает лучшим.
Я не уверен, что этот js прилагается к документу и выполняется? Связано ли это с Rails UJS?
UJS больше подходит для обеспечения того, чтобы приложение работало изящно, даже если браузер пользователей не обрабатывает javascript. Например, вы пишете свой скрипт, чтобы перехватить событие нажатия кнопки и отменить действие клика, вместо этого сделать что-то еще, например, вызов AJAX. Если у пользователя отключен javascript, этот перехват не произойдет. Поскольку вы написали js таким образом, произойдет нормальное действие нажатия кнопки. Оба случая должны быть обработаны, и оба должны работать - это ненавязчивое использование javascript.
Что касается присоединения к документу, не совсем то, что нет. Браузер получает кучу кода, и, если он в состоянии, он запускает этот код в контексте текущего документа. Он не сохраняет код в любом месте, когда он завершается, он отбрасывается, и документ остается в любом состоянии, которое оставил сценарий.
Как сделать рендер, связанный с response_to? Используются ли они бок о бок или одни предпочитают друг друга?
respond_to
позволяет вам управлять тем, как вы отреагируете на пользователя, основываясь на своем запросе. В примере UJS выше это позволяет вам иметь один метод, который отвечает на запросы HTML и AJAX, но знает разницу и может внести любые изменения, которые он должен внести в свой ответ.
Пример:
respond_to |format| do
format.html # will by default render the view with this actions name
format.json do # lets pass back the object in json format
render @object.to_json
end
end
Это все предназначено как вводные ответы и довольно просты, я бы рекомендовал дальнейшее чтение по каждому предмету.
Я действительно имел в виду рельсы/jquery-ujs и волшебство, которое приходит с ним. «Что касается добавления к документу, это не совсем так. Браузер получает кучу кода, и, если он способен, он запускает этот код в контексте текущего документа.Он не сохраняет код в любом месте, когда он завершается, он отбрасывается, и документ остается в любом состоянии, оставленном в скрипте ». - Могу ли я использовать функции, определенные в ответ js позже? Знаете ли вы, где я могу читайте об этой теме больше? (что браузер делает с ответом js) – maru