- 浏览: 350899 次
最新评论
-
springdata_springmvc:
bootstrap demo实例教程源代码下载:http:// ...
牛标联盟开发日记之前端 -
xiangxm:
谢谢分享
android中获取文字的宽度 -
showwei2004:
短短的一段文字,给人很多帮助。
android中获取文字的宽度 -
xiangguiwang:
谢谢
CentOS上通过源码安装ruby(1.8.6) -
G_o_o:
顶,写的好
CentOS上通过源码安装ruby(1.8.6)
在做注册用户管理时,常见做法是,一个User对象包括了用户的所有属性,比如:用户登陆名、密码、爱好、特长、邮箱、性别、年龄、地址、电话等等信息。
结果就是这个表的字段非常多:
另外一种做法是分成User和Profile两个对象,用户注册的时候只需填写简单的用户名和密码(邮箱)信息就可以完成注册,Profile信息则注册完成后,用户根据需要来填写,非强制性的,这样用户也乐意注册。同时User信息来了也方便和其它系统集成,比如要加入论坛等功能时。参考lovd-by-less的做法:
表结构是这样的,同时增加User Profile两个模型,在注册的时候,注册完保存用户基本信息的同时创建Profile信息,使User和Profile关联起来,这样就知道profile属于那个用户了。
以后,比如用户的博客、朋友、消息、相册都与Profile关联,不直接与User关联。
同上,楼主似乎说不到点上
其实吧,我也是分析lovd-by-less得出做法,感觉这种做法很不错,就推荐在这里。
同上,楼主似乎说不到点上
结果就是这个表的字段非常多:
create_table "users", :force => true do |t| t.string "login" t.string "crypted_password", :limit => 40 t.string "salt", :limit => 40 t.string "remember_token" t.datetime "remember_token_expires_at" t.boolean "is_admin" t.boolean "can_send_messages", :default => true t.string "time_zone", :default => "UTC" t.string "email_verification" t.boolean "email_verified" t.string "first_name" t.string "last_name" t.string "website" t.string "blog" t.string "flickr" t.text "about_me" t.string "aim_name" t.string "gtalk_name" t.string "ichat_name" t.string "icon" t.string "location" t.string "email" t.boolean "is_active", :default => false t.string "youtube_username" t.string "flickr_username" t.datetime "created_at" t.datetime "updated_at" end
另外一种做法是分成User和Profile两个对象,用户注册的时候只需填写简单的用户名和密码(邮箱)信息就可以完成注册,Profile信息则注册完成后,用户根据需要来填写,非强制性的,这样用户也乐意注册。同时User信息来了也方便和其它系统集成,比如要加入论坛等功能时。参考lovd-by-less的做法:
create_table "profiles", :force => true do |t| t.integer "user_id" t.string "first_name" t.string "last_name" t.string "website" t.string "blog" t.string "flickr" t.text "about_me" t.string "aim_name" t.string "gtalk_name" t.string "ichat_name" t.string "icon" t.string "location" t.string "email" t.boolean "is_active", :default => false t.string "youtube_username" t.string "flickr_username" t.datetime "created_at" t.datetime "updated_at" end add_index "profiles", ["user_id"], :name => "index_profiles_on_user_id" create_table "users", :force => true do |t| t.string "login" t.string "crypted_password", :limit => 40 t.string "salt", :limit => 40 t.string "remember_token" t.datetime "remember_token_expires_at" t.boolean "is_admin" t.boolean "can_send_messages", :default => true t.string "time_zone", :default => "UTC" t.string "email_verification" t.boolean "email_verified" t.datetime "created_at" t.datetime "updated_at" end add_index "users", ["login"], :name => "index_users_on_login"
表结构是这样的,同时增加User Profile两个模型,在注册的时候,注册完保存用户基本信息的同时创建Profile信息,使User和Profile关联起来,这样就知道profile属于那个用户了。
class Profile < ActiveRecord::Base belongs_to :user end
class User < ActiveRecord::Base has_one :profile, :dependent => :nullify #删除user时,将profile的user_id设置为null attr_accessor :email def before_create p = Profile.find_by_email @email end def after_create p = Profile.find_or_create_by_email @email raise 'User found when should be nil' unless p.user.blank? p.is_active=true #默认是否激活 p.user_id = id #用户的id p.save end end
以后,比如用户的博客、朋友、消息、相册都与Profile关联,不直接与User关联。
评论
7 楼
木剑先生
2009-09-12
你注册的时候一定要把User的所有属性显示出来要用户填写么?可以只写一部分么,没必要这么麻烦做one to one association,其他个人信息可以在作个人资料的修改时候填写
6 楼
qianjigui
2009-07-20
<div class="quote_title">qichunren 写道</div>
<div class="quote_div">感觉 标题是讲web用户体验,而 内容是讲技术实现。<br><br>对于 如何合理的实现用户注册信息收集?<br>我自己从来不想让用户的注册过程变得麻烦,我不会让他要填写一大堆的个人信息 才能完成注册,注册信息越简单越好,等他注册好了,可以通过可以手段来让用户去填充 个人资料信息。 关于这个,好像以前在讨论过。</div>
<p>确实有一点遗憾,不过看看构造思路还是很不错的。</p>
<p> </p>
<p>另外关于系统相关操作信息的统计,我觉得是个非常好的讨论话题,也是很多研究人员长期从事的。</p>
<p>google没放弃任何一个细节,才让今天的使用非常人性化。</p>
<p>我也在考虑后续的系统开发中多注意收集数据,在《rails recipes》里面有关于catch 404的相关讨论,这个思路可以借鉴和传承。如果在使用Catch 404的时候,会发现系统升级后的一些问题。例如当时在看到javaeye的路由配置信息时候,发现他们在做REST迁移时候对于以前url路径的保存,很大的一方面是为了和google缓存提供服务。</p>
<div class="quote_div">感觉 标题是讲web用户体验,而 内容是讲技术实现。<br><br>对于 如何合理的实现用户注册信息收集?<br>我自己从来不想让用户的注册过程变得麻烦,我不会让他要填写一大堆的个人信息 才能完成注册,注册信息越简单越好,等他注册好了,可以通过可以手段来让用户去填充 个人资料信息。 关于这个,好像以前在讨论过。</div>
<p>确实有一点遗憾,不过看看构造思路还是很不错的。</p>
<p> </p>
<p>另外关于系统相关操作信息的统计,我觉得是个非常好的讨论话题,也是很多研究人员长期从事的。</p>
<p>google没放弃任何一个细节,才让今天的使用非常人性化。</p>
<p>我也在考虑后续的系统开发中多注意收集数据,在《rails recipes》里面有关于catch 404的相关讨论,这个思路可以借鉴和传承。如果在使用Catch 404的时候,会发现系统升级后的一些问题。例如当时在看到javaeye的路由配置信息时候,发现他们在做REST迁移时候对于以前url路径的保存,很大的一方面是为了和google缓存提供服务。</p>
5 楼
pure
2009-07-16
mccxj 写道
下一站,火星 写道
把经常用到的用户字段放到一个表里面,反之放到一个表里面
同上,楼主似乎说不到点上
其实吧,我也是分析lovd-by-less得出做法,感觉这种做法很不错,就推荐在这里。
4 楼
mccxj
2009-07-16
下一站,火星 写道
把经常用到的用户字段放到一个表里面,反之放到一个表里面
同上,楼主似乎说不到点上
3 楼
下一站,火星
2009-07-16
把经常用到的用户字段放到一个表里面,反之放到一个表里面
2 楼
qichunren
2009-07-16
感觉 标题是讲web用户体验,而 内容是讲技术实现。
对于 如何合理的实现用户注册信息收集?
我自己从来不想让用户的注册过程变得麻烦,我不会让他要填写一大堆的个人信息 才能完成注册,注册信息越简单越好,等他注册好了,可以通过可以手段来让用户去填充 个人资料信息。 关于这个,好像以前在讨论过。
对于 如何合理的实现用户注册信息收集?
我自己从来不想让用户的注册过程变得麻烦,我不会让他要填写一大堆的个人信息 才能完成注册,注册信息越简单越好,等他注册好了,可以通过可以手段来让用户去填充 个人资料信息。 关于这个,好像以前在讨论过。
1 楼
jinleileiking
2009-07-15
嗯。不错,回来试试。
发表评论
-
牛标联盟开发日记之前端
2014-01-13 09:40 2368在开发牛标联盟(www.niusb.com) 的 ... -
Git提交时忘记提交新增加的文件的处理
2011-03-01 10:18 6085Git提交时忘记提交新增加的文件的处理 在commit的时候 ... -
Android UI日志
2010-08-01 14:30 1394为了以后的参考,记录下: 1、自定义样式(style) 在v ... -
转:awk学习
2010-07-16 11:09 1539其它参考:http://man.lupawor ... -
java中任意M~N范围随机数
2010-03-08 19:19 2053(M+(N-M)*Math.random()) 若需整型,则 ... -
mysql中long时间的转换
2010-01-06 14:39 9381在开放中,有时候为方便将日期时间以long类型(秒钟)存在数据 ... -
java 版本的某个时间前(发表于XX前)功能
2009-09-25 13:49 1772有很多版本的,先上过ruby版本。 def distan ... -
CentOS上通过源码安装ruby(1.8.6)
2009-08-25 17:34 4764首先下载ruby wget ftp://ftp.ruby- ... -
用ibator eclipse 插件自动生成sqlmap
2009-08-06 19:54 4970在新项目中用到了ibatis,如果手写sqlmap和model ... -
perf4j使用
2009-07-30 16:41 2790在做数据迁移的时候,性能显得格外重要,这个时候perf4j就是 ... -
Scala创始人:比Java更高级的语言
2009-07-30 11:06 2074近日,Scala语言的创始人Martin Odersky接受了 ... -
推荐一下powercmd小工具
2009-07-25 17:58 9021使用powercmd已经有很久了,给我工作带来了极大的便利,我 ... -
Play!框架扩展模板功能
2009-07-17 09:49 1904Play!框架扩展模板功能,这个是官方文档中的一个例子,引用一 ... -
使用Google 相册API
2009-07-16 16:50 3885在做GAE应用时,想上传图片在blog中使用,当然可以直接上传 ... -
Resource Controller插件使用
2009-07-15 11:25 1192rails生成的控制器中,大部分的action代码都非常相似, ... -
再次回归Rails
2009-07-14 19:20 1874学习Rails是在2007年的时候吧,期间做了一个项目:爱美发 ... -
体验了一下 playframework
2008-12-10 14:24 1769playframework框架和rails很像.http:// ... -
netbeans IDE 计划今日发布6.0正式版?
2007-12-03 11:07 1500netbeans IDE 计划今日发布6.0正式版咋还不见动静 ... -
ext应用载图,PP几张~
2007-04-18 20:59 17304用到ext和部门功能,对grid还是不敢使用,怕系统满足 ... -
JBoss Seam 1.1 GA 新特性预览(转)
2007-01-19 13:59 5106GOOD!! 1、Seam1.1提供了一个类似于RoR Gen ...
相关推荐
基于SSM框架(Spring + Spring MVC + MyBatis)的图书馆座位预约系统旨在提供便捷、高效的图书馆座位预约服务,通过微信小程序实现用户预约座位、管理订单等功能,主要包括以下方面: 用户注册与登录:用户可以通过...
用户注册与登录:用户可以通过微信小程序注册账号或使用微信账号直接登录,确保用户身份的真实性和安全性。 自习室信息浏览:系统集成了自习室信息管理服务,用户可以在微信小程序上浏览自习室的位置、容纳人数、...
本项目着力于数据统一管控,包含XX生态中台,XX用户管理,以及用户行为数据获取展现三系统,其中定义规范各业务端数据类型,进行各业务端应用授权,以及用户注册,登录,用户信息存储,管理员权限划分,批量导入数据...
利用宾馆客房管理信息系统中合理的数据库结构来保 存数据信息,及时了解各个环节中信息的变更,通过有效的程序结构来支持各种数据操 作的执行,以提高管理效率,实现宾馆服务的系统化、规范化、自动化。通过该项目的...
(1) 实现对不同权限的用户进行合理的管理; (2)实现对各个模块的维护和监控等功能。 会员: 会员名,姓名,性别,出生日期,联系电话,住宅地址,会员备注 雇员: 雇员编号,登录密码,姓名,性别,出生日期,雇员照片,联系电话,...
医院挂号系统主要用于实现医院的挂号,前台基本功能包括:用户注册、用户登录、医院查询、挂号、取消挂号、修改个人信息、退出等。 后台基本功能包括:系统管理员登录、医院管理、科室管理、公告管理、退出系统等。...
(2) 前台系统注册功能:必须使用Ajax验证要注册的用户是否存在; (3) 前端页面:要求页面美观、布局合理、色彩搭配协调; (4) 首页中要有体现系统主题的LOGO; (5) 所有页面之间的链接要合理,具有从首页到子页面,从...
(1) 实现对不同权限的用户进行合理的管理; (2)实现对各个模块的维护和监控等功能。 会员: 会员名,姓名,性别,出生日期,联系电话,住宅地址,会员备注 雇员: 雇员编号,登录密码,姓名,性别,出生日期,雇员照片,联系电话...
同时,其特色功能如实时更新的信息推送、个性化推荐以及社交分享功能,让用户能够及时获取所需信息,并方便地将优质内容分享至朋友圈或好友,实现信息的高效传播与互动。 【小程序名称】注重数据安全与隐私保护,...
8. 安全监控与访问控制:结合门禁系统,确保场馆的安全和合理使用。 9. 客户服务与反馈:提供客户咨询渠道,收集并响应会员的建议和投诉。 10. 移动设备适配:优化移动端用户体验,支持通过智能手机应用进行预约和...
同时,其特色功能如实时更新的信息推送、个性化推荐以及社交分享功能,让用户能够及时获取所需信息,并方便地将优质内容分享至朋友圈或好友,实现信息的高效传播与互动。 【小程序名称】注重数据安全与隐私保护,...
用户注册,当然并不一定他立即就要买东西,可以先注册,任何时候都可以来买东西,用户注册的好处在于买完东西后无需再要输入一大堆个人信息,只须将帐号和密码输入就可以了。 订单号模块 所谓订单号模块,就是客户...
1. 用户管理:实现警务辅助人员的注册、登录、信息修改等功能,确保用户信息的安全性和准确性。 2. 岗位管理:对警务辅助人员的岗位进行分类管理,包括岗位设置、岗位调整等功能,便于合理分配人力资源。 3. 工作...
数据交互:提供用户注册、登录、评论等功能,使用户能够参与到车辆管控的讨论和交流中来,同时也可以与其他用户进行分享和互动。 数据分析:对收集到的车辆管控数据进行统计和分析,得出一些有价值的结论和建议,以...
◆ 注册顾客用户,包括用户最新网上购物系统 名、密码等信息; ◆ 修改顾客用户信息;最新网上购物系统 ◆ 删除顾客用户信息。 (6) 系统用户最新网上购物系统 管理功能 ◆ 添加系统用户,包括用户名、密码等最新...
管理员验证注册信息,收集到的用户信息,分析得出的关联信息等大量的数据都由数据库管理系统管理。本文中数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。在设计过程中,充分保证了系统代码的...
17 4.1 用户注册登入 17 4.2 注册用户发帖 18 4.3 注册用户浏览帖子 19 4.4 注册用户回帖 20 4.5管理会员信息 21 4.6主界面 21 结论 23 参考文献 24 致谢 25 绪论 论坛系统是互联网上一种人与人之间交互的必备工具。...
2系统实现 2.1用户认证 用户认证的服务器终端识别注册用户身份信息的主要方法,用户登录系统后,输入个人信息,网络管理系统将自动对用户身份进行识别。为确保用户身份的真实性,系统会自动将用户名与密码以代码的...
本论文,简要阐述了系统的开发背景与开发环境,对系统的构架进行分析,由此划分出各个模块,包括用户注册模块,用户登陆模块,个人管理模块,基本信息管理模块,特殊信息管理模块,毕业生信息管理模块,成绩管理模块...
– 应用三大范式规范化表格 下面我们以一个BBS简易论坛的数据库设计为例来看看设计数据库的步骤: 收集信息: 与该系统有关人员进行交流、坐谈,充分理解数据库需要完成的任务 BBS论坛的基本功能: l 用户注册和登录...