我在一个视图中渲染部分:
<%= render 'video',:video => @video,:video_id => 'video_show_id' %>
并在部分中包含此代码:
<% if video_id %> <%= link_to "video",video.video_url,:class => "oembed",:id => video_id %> <% else %> <%= link_to "video",:class => "oembed" %> <% end %>
问题是这个部分会在我的应用程序中的许多地方呈现,而在其他视图中我不想传递:video_id到部分.因此我的应用程序抛出一个错误,即video_id未定义.我可以通过:video_id => “”在其他视图中的部分,但由于部分在很多地方呈现,这是一种痛苦.有没有更简单的方法来处理这个?
解决方法
尝试定义?而不是它真的很重要,但它实际上是
operator.
<% if defined? video_id %>