Vote_fu и Ajax запросы - PullRequest
       20

Vote_fu и Ajax запросы

1 голос
/ 04 марта 2010

Я был в течение нескольких часов сейчас, пытаясь получить функцию voice_fu и запустить. Я наконец-то проголосовал за голосующий объект (альбом), но мне нужно постоянно обновлять страницу, чтобы увидеть, как эффект от моих знаний Ajax с рельсами является базовым, и я понятия не имею, где я ошибаюсь, если какая-либо помощь будет здорово, будет высоко ценится !!!

Соответствующий код выглядит следующим образом:

файл javascript

application.js:

 // Place your application-specific JavaScript functions and classes here
 // This file is automatically included by javascript_include_tag :defaults

 jQuery.ajaxSetup({
 'beforeSend': function(xhr) {xhr.setRequestHeader("Accept", "text/javascript")}
 })

 jQuery(document).ready(function() {
 $("#votes_ .album").bind('click', function(e) 

 });

| ___________________________________________________________________________________________

jquery.js JQuery-ui.js jrails.js

Layout / applicationtion.html.erb (JavaScript добавлен в заголовок)

<%= javascript_include_tag :defaults %>
<%= javascript_include_tag 'jquery.js', 'application.js' %>

вид / голос

_album_vote.html.erb

<%# 
 # You can't vote if it is your quote, 
 # you are not logged in, 
 # or you have already voted on this item

 unless album.user == current_user ||
 current_user.voted_on?(@album)
%>

 <%= link_to_remote "Vote Up",
  :url => user_album_votes_path(album.user, album, :vote => :true, :format => :rjs),
  :method => :post %>




 <%= link_to_remote "Down", 
  #:url => current_user.vote_down_path(album), :vote => :false, :format => :rjs, 
  :url => user_album_votes_path(album.user, album, :vote => :false, :format => :rjs),
  :method => :post
  %> 

<%# end %>



Votes: <%= @album.votes_for - @album.votes_against %>

| ___________________________________________________________________________________________

просмотр / альбом / шоу:

<div id="votes_<%= @album.id %>" class="album_votes">
 <%= render :partial => "votes/album_vote", :locals => {:album => @album} %>
</div>

| ___________________________________________________________________________________________

create.rjs

page.replace_html "votes_#{@album.id}", :partial => "album_vote", :locals => {:album => @album}

| ___________________________________________________________________________________________

error.rjs

page.alert "Couldn't save your vote: You can only vote once, and you cannot vote for your own items."

| ___________________________________________________________________________________________

Я попытался поиграть с идентификатором #votes_ .album, который, как мне показалось, был неверно назван, но все равно он не работает, даже не ошибка, как будто javascript выключен!

Любая помощь будет отличной!

На консоли сервера обнаружена ошибка:

NameError (uninitialized constant Mime::RJS):
  app/controllers/votes_controller.rb:54:in `create'
  app/controllers/votes_controller.rb:52:in `create'

Я соглашаюсь с этим до выключения света (время сна)!

Если хочешь, дай мне руку помощи!

Привет

Dan

1 Ответ

0 голосов
/ 04 марта 2010

Похоже, у вас проблемы с базовой настройкой jquery. Следующие два поста, безусловно, помогли мне подняться по кривой обучения jQuery:

jQuery Railscast

Гильдия начинающих для jQuery и Rails

Эти посты вместе с удивительным FireBug должны помочь вам

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...