ユーザーが追加リンクをクリックすると、URL が既に追加されている場合はアラートが表示されます。それ以外の場合は、新しいブックマークを追加するためのフォームが表示されます。以下のコードは、重複した URL をチェックするのに非常にうまく機能しますが、URL が重複していない場合、ブックマークの追加をレンダリングする方法がわかりません (この場合、ページは通常の非 ajax リクエストのように読み込まれます)。
これは表示中のリンクです
<%= link_to "add", user_bookmark_add_path(current_user, bookmark), remote: true %>
リンクはコントローラー アクション add を呼び出します
# controllers/bookmarks_controller.rb
def add
@bookmark = Bookmark.find(params[:bookmark_id])
respond_to do |format|
format.js
end
end
ジャバスクリプトファイル
# views/bookmarks/add.js.erb
<% if duplicated_url? @bookmark.url %>
alert("Duplicated")
<% else %>
# how to render the new bookmark form here
<% end %>
なにか提案を ?ありがとう