发新话题
打印

用户管理 with login_generator

本主题由 admin 于 2008-3-16 16:11 移动

用户管理 with login_generator

login_generator

CREATE TABLE users (
  `id` int(11) NOT NULL auto_increment,
  `login` varchar(80) default NULL,
  `password` varchar(40) default NULL,
  PRIMARY KEY  (`id`)
) ;

generate login Account

application.rb

require 'login_system'
  #登录模块
  include LoginSystem
  model :user

blog_controller.rb
  #不需要登录的
  before_filter :login_required, :except => [ :index,:list,:show]




contest:

http://rails.drecom.jp/
http://apiblog.kakaku.com/












change_passworld.rhtml:

<%= start_form_tag :controller => "account", :action => "change_password" %>

<div title="password alteration" id="password alteration" class="form">

  <label for="user_old_pass">Old password:</label><br/>
  <input name="old_password" id="old_password" tabindex="2" type="password" /><br/>
  <label for="user_new_pass">New password:</label><br/>
  <input name="new_password" id="new_password" tabindex="2" type="password" /><br/>
  <label for="user_new_pass_confirmation">Confirm password:</label><br/>
  <input name="new_password_confirmation" id="new_password_confirmation" tabindex="2" type="password" /><br/>

<input type="submit" value="Alter password" class="primary" />
</div>
<%= end_form_tag %>



account_controller.rb:

  def change_password
    @user = @session['user']
    @session['message'] = nil
   
    case @request.method
    when :post
      unless @user.password_check?(@params['old_password'])
        @session['message'] = '请重新输入旧密码'
      else
        unless @params['new_password'] == @params['new_password_confirmation']
          @session['message'] = '两次输入的新密码不一致'
        else
          @session['message'] = '已经成功修改了您的密码' if @user.change_password(@params['new_password'])
        end
      end
      redirect_back_or_default :action => "welcome"
    end
  end

TOP

. 2



================================================
好贴当然要顶下大家一起顶顶啊

TOP

发新话题