Ruby on Rails: acción sin ver

Tengo lo que creo que es un problema muy simple. Vengo de un fondo de PhP, y solía hacer esto todo el tiempo, por lo que puedo estar mirando esto de manera incorrecta.

Estoy tratando de crear un controlador ajax en RoR. Cuando el usuario hace clic en un botón, javascript dispara una POST y le brinda retroalimentación del usuario utilizando el parámetro "éxito:" de la función ajax de jQuery.

El problema es que RoR está intentando cargar una vista para el controlador ajax, cuando realmente solo necesito algunas líneas en el controlador para hacer el trabajo de la base de datos, y hacer eco de un código de estado que será interpretado por el javascript del usuario.

Esto es solo una página de suscripción de Mailchimp, así que solo estoy usando el controlador 'home'.

Mis rutas;

map.root :controller => 'home'
map.connect '/mcsubscribe', :controller => 'home', :action => 'mcsubscribe'

My Home Controller;

class HomeController < ApplicationController
  def index
    # no content
  end
  def mcsubscribe
    print params[:email]
  end
end

Y mi JavaScript de prueba, solo para que entiendas lo que está sucediendo;

function mcSubscribe() {
    var email = jQuery("#signup_input_email").val();
    jQuery.ajax({
        type: "POST",
        url: "http://domain.com/mcsubscribe",
        data: "email=" + email,
        cache: false,
        success: function(result) {
            alert(result);
        }
    });
}

Pensé que este sería un problema común, pero busqué en Google y solo pude encontrar sugerencias para redirigir, ya que el usuario nunca visitará la página / mcsubscribe, eso no parece apropiado.

Respuestas a la pregunta(8)

Su respuesta a la pregunta