Мне сложно понять, как ориентироваться в комбинации всех этих языков / сервисов: Ruby on Rails, jQuery, AJAX и Embedly API
По сути, я хочу создать приложение, котороепозволяет пользователю вводить URL-адрес видео в текстовое поле, а затем использовать API-интерфейс embedly-jQuery, чтобы извлечь эскиз и вернуть его с помощью ajax.Затем, когда пользователь нажимает на миниатюру, миниатюра скрывается и появляется встроенное видео.
Вот код в моем файле application.js.Насколько я понимаю, этот код встраивает видео в элемент #video_div
.Кроме того, я не уверен, смогу ли я использовать переменную @video.video_url
в моем файле application.js:
$(document).ready(function() {
$.embedly('#{@video.video_url}',
{maxWidth: 600,
elems: $('#video_div'),
success: function(oembed, dict){
alert(oembed.title);
});
});
Вот мое представление new
, соответствующее новому действию.Он включает в себя форму, на которую пользователь отправляет ссылку, а также div с идентификатором video_id
, в который должно быть вставлено видео.
<%= form_for(@video) do |f| %>
<% if @video.errors.any? %>
<div id="errorExplanation">
<h2><%= pluralize(@video.errors.count, "error") %> prohibited this video from being saved:</h2>
<ul>
<% @video.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :video_url %><br />
<%= f.text_field :video_url %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
<div id="video_div"></div>
Однако видео не встроено.Почему это?Нужно ли мне добавить что-то вроде format.js
в метод create в моем видеоконтроллере, а затем добавить файл create.js.erb
?Если так, что должно войти в этот файл?Дайте мне знать, если я должен опубликовать больше кода.