我有一个在灯箱所示的提交表单。 我验证表单很严重,但有些情况下播放列表已经提交的情况下,在这种情况下,提交表单之前我不能告诉。
目前,我有:disable_with => 'Submitting...'
如果错误被送回形式这将是完全真棒,并提交按钮将重新启用。
这将是可能没有太多的并发症?
我也有第二个相关的问题......因为我的形式是在灯箱广告,它的代码实际上是对索引页(我的应用程序只是一个页面差不多)。 这意味着,真的是没有“新”的行动,而是一个@playlist = Playlist.new(:title => ...)
在我的索引行动(与沿@playlists = Playlist.all
等)。 在我的路线我这样做: resources :playlists, :only => [:create]
这是否健全有关的权利我做的方式?
编辑:下面是一些代码,但它基本上是一样简单,你可以想像它。
下面的那种作品......它创造如果有效播放列表,否则什么也不做。 这两次create.js.erb被称为..我刚才不如何使这项工作完成了。 如果成功,我需要关闭该窗口,如果失败,我需要的错误装入的形式这就是已经在屏幕上。 林不知道那个地方去,但:/
before_filter :load_genres, :only =>[:index, :user]
before_filter :new_playlist, :only => [:index, :new]
def index
@playlists = Playlist.order('created_at DESC').page(params[:page]).per(30)
end
def create
@playlist = Playlist.new(params[:playlist])
respond_to do |format|
if @playlist.save
format.html { redirect_to root_path, :notice => "Playlist submitted" }
format.js {}
else
format.html { render :action => :new, :layout => !request.xhr? }
format.js {}
end
end
end
def new
end
def load_genres
@genres = Genre.order(:name)
end
def new_playlist
@playlist = Playlist.new(:title => params[:title], :url => params[:url], :description => params[:description])
end
继承人的第一像我的形式(位于index.html.erb)的:
<%= form_for @playlist, :remote => true do |f| %>
我目前在没有HTML或代码create.html.erb