Sorry the error that i get should be like this:
Processing ArticlesController#7 (for 192.168.71.2 at 2008-10-07
20:22:14) [POST]
Session ID:
BAh7CDoMY3NyZl9pZCIlZmYyODM1OGM3OGM5ODA5NThhYWM0MDIwMGM0Y2E3
ZDg6DHVzZXJfaWRpByIKZmxhc2hJQzonQWN0aW9uQ29udHJvbGxlcjo6Rmxh
c2g6OkZsYXNoSGFzaHsABjoKQHVzZWR7AA==--8a4d25e872b1a1d27e663069f94087a6245f75aa
Parameters:
{"authenticity_token"=>"2f8d0d7adeea4495c27d1c045a14675dad7294f8",
"action"=>"7", "controller"=>"articles"}
ActionController::UnknownAction (No action responded to 7):
----------------------------------------------
On Oct 7, 8:32 pm, Shawn Tang <[EMAIL PROTECTED]> wrote:
> Hi,I am trying to create a user autentication system. Normally the
> user autentication system works fine but now i want to include the
> login and logout in the header of the application. so that u can login
> and logout in any part of the application
>
> this it the weird part of the problem. let's say i am in articles/
> search then i login and logout there is no problem. but when i go to
> articles/show i get
>
> ----------------------------------------------
>
> Processing GroceriesController#7 (for 192.168.71.2 at 2008-10-07
> 20:22:14) [POST]
> Session ID:
> BAh7CDoMY3NyZl9pZCIlZmYyODM1OGM3OGM5ODA5NThhYWM0MDIwMGM0Y2E3
> ZDg6DHVzZXJfaWRpByIKZmxhc2hJQzonQWN0aW9uQ29udHJvbGxlcjo6Rmxh
> c2g6OkZsYXNoSGFzaHsABjoKQHVzZWR7AA==--8a4d25e872b1a1d27e663069f94087a6245f75aa
> Parameters:
> {"authenticity_token"=>"2f8d0d7adeea4495c27d1c045a14675dad7294f8",
> "action"=>"7", "controller"=>"groceries"}
>
> ActionController::UnknownAction (No action responded to 7):
> ----------------------------------------------
>
> which does not make sense cause the logout link is linked to
> the :action :destroy
>
> Next i try logging out in search and logging in inside :show and
> logging out inside :show as well and everything works.
>
> ------------------------------------------------
> here is the Layout :
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
> "http://www.w3.org/TR/html4/loose.dtd">
> <html>
>
> <head>
>
> <%= stylesheet_link_tag 'star' %>
> <%= javascript_include_tag :defaults, "jquery" %>
>
> </head>
>
> <body>
> <div id="login_panel">
> <%= render :partial => 'login_panel'%>
> </div>
>
> <%= yield %>
> </body>
> </html>
>
> Partial view "_login_panel.html.erb":
>
> <div id="searchlist"> <span align="right" class="list-signup">
> <% if logged_in? && session[:user_id]%>
>
> <%= User.find(session[:user_id]).login %> ,you are
> logged in! || <
> %= link_to_remote "logout", :url => {:controller =>
> 'articles', :action => 'destroy'} %>
>
> <% else %>
>
> <% form_remote_tag :url => {:controller => "articles", :action =>
> "create"} do %>
> <label for="login">Login:</label>
> <%= text_field_tag :login, params[:login] %>
>
> <label for="password">Password:</label>
> <%= password_field_tag 'password' %>
>
> <label for="remember_me">Remember me for 2 weeks:</label>
> <%= check_box_tag 'remember_me' %>
>
> <%= submit_tag 'Log in' %>
> <% end -%>
>
> <% end -%>
> </span></div>
>
> ---------------------------------------------------------
>
> Articles controller:
>
> class ArticlesController < ApplicationController
>
> protect_from_forgery :only => [:create, :delete, :update]
>
> def create
> password_authentication(params[:login], params[:password])
> end
>
> def rate
> @articles = Article.find(params[:id])
> @articles.rate(params[:stars], User.find(session[:user_id]))
> # some page update here …
>
> respond_to do |format|
>
> format.js {
> render :update do
> |page|
> page.replace_html 'ratingdiv', :partial =>
> 'grocery_with_rating'
>
> end
> }
> end
> end
>
> def search
> articles_per_page = 12
>
> @articles = Article.search params[:query], {:page =>
> params[:page], :per_page => articles_per_page}
>
> if request.xml_http_request?
> render :partial => "search", :layout => false
> end
> end
>
> def show
> @articles = Article.find(params[:id])
>
> respond_to do |format|
> format.html # index.html.erb
> format.xml { render :xml => @articles }
> end
>
> end
>
> def destroy
>
> self.current_user.forget_me if logged_in?
> cookies.delete :auth_token
> reset_session
> render :update do |page|
> page.replace_html "login_panel", :partial => "login_panel"
> end
> end
>
> protected
>
> # Updated 2/20/08
> def password_authentication(login, password)
> user = User.authenticate(login, password)
> if user == nil
> failed_login("Your username or password is incorrect.")
> elsif user.activated_at.blank?
> failed_login("Your account is not active, please check your
> email for the activation code.")
> elsif user.enabled == false
> failed_login("Your account has been disabled.")
> else
> self.current_user = user
> successful_login
> end
> end
>
> private
>
> def failed_login(message)
> flash.now[:error] = message
> render :action => 'new'
> end
>
> def successful_login
> if params[:remember_me] == "1"
> self.current_user.remember_me
> cookies[:auth_token] = { :value =>
> self.current_user.remember_token , :expires =>
> self.current_user.remember_token_expires_at }
> else
> self.current_user.remember_me2
> cookies[:auth_token] = { :value =>
> self.current_user.remember_token , :expires =>
> self.current_user.remember_token_expires_at }
>
> end
>
> flash[:notice] = "Logged in successfully"
> return_to = session[:return_to]
> if return_to.nil?
> render :update do |page|
> page.replace_html "login_panel", :partial => "login_panel"
> end
> else
> redirect_to return_to
> end
> end
> end
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---