главная -> статьи -> On-line приложения на платформе Ruby on Rails (часть 2)
 
Обработка (первый пример)

  Данный пример включается только для полноты понимания механизма взаимодействия с сервером (платформой), демонстрации последовательности формирования запрос - форма - запрос.

  Если запустить приложение probe из предыдущей статьи и открыть браузер с запросом http://localhost:3000/accounts/login
то получим сообщение:

Unknown action
No action responded to login

т.е. нет такого метода (действия). Его следует определить в контроллере accounts

def login
  case request.method
  when :post
    if session[:user] = User.authenticate(params[:login],
      params[:password])
      redirect_to :controller => "куда_нибудь",
      :action => "что_нибудь"
    else
      flash.now['notice'] = "ошибка входа, проверьте..."
    end
  end
end

  Обратите внимание: аутентификация - извлечение данных о пользователях и сравнение с пришедшими в запросе выполняется в модели User.authenticate (приложение probe), с равным успехом это можно выполнить и в контроллере accounts. Кроме того, action login задействовано и в первом запросе (выдача формы) и в обработке запроса из формы.
При успешном выполнении аутентификации выполняем, к примеру, redirect_to

Правило (соглашения rails):
Порядок формирования запроса: контроллер/метод(action)/id

далее

   
  © 2008   Сединко А.М.
  © 2004 design by   kir
Hosted by uCoz