Я делаю находчивые маршруты для видео youtube. Таким образом, человек просто вставляет ссылку на встраивание youtube в форму. В контроллере у меня есть нормальный набор изобретательных действий:Youtube embed link не отображается в Rails
class VideosController < ApplicationController
def index
@videos = Video.all
end
def new
@video = Video.new
end
def create
Video.create(params[:video])
redirect_to :action => :index
end
def destroy
Video.destroy(params[:id])
redirect_to :action => :index
end
end
И в представлении я просто отображая его: (в Haml)
- @page_title = 'Video'
#videos
%ul
= list_of(@videos) do |video|
%h1= video.title
!= video.link
= link_to "Delete", video_path(video), :method => :delete
= link_to "Add new video", new_video_path
%p#top
= link_to 'Go to top ↑', '#'
Для того, кто не используют Haml , !=
ускользает от строки. video.link
содержит код для встраивания YouTube
Проблема в том, что при создании нового видео и при перенаправлении меня обратно на индексную страницу вновь созданное видео не отображается (другие обычно отображаются). Только после обновления страницы она обычно отображается.
Я видел в веб-инспекторе, что атрибут src
отсутствует в iframe
(так вот почему видео не отображается). Но когда я смотрю в источник страницы, там все нормально. Итак, думая, что это может быть ошибка Javascript, я попытался отключить его. Но ничего не изменилось.
Вы писали 'А в представлении I» m, просто отображая его. '- но это все ... пожалуйста, добавьте код представления для виджета iframe или javascript, который вы используете. –
Здесь я добавил его –
, когда вы перенаправляетесь на #index, отображается ли название и/или удаление ссылки? Кроме того, есть ли какая-либо фоновая обработка, которая принимает обновления записи после ее создания? –