今天我们看看怎样在数据库记录用户操作
db/migrate/002_add_audit_trails_table.rb
app/models/audit_swpeeper.rb
然后我们需要告诉PeopleController在操作Person对象时用audit_sweeper来记录操作
app/controllers/people_controller.rb
由于auditing机制依赖与Rails的缓存代码,所以确保config/environments/development.rb里将config.action_controller.perform_caching设置为true
db/migrate/002_add_audit_trails_table.rb
class AddAuditTrailsTable < ActiveRecord::Migration def self.up create_table :audit_trails do |t| t.column :record_id, :integer t.column :record_type, :string t.column :event, :string t.column :user_id, :integer t.column :created_at, :datetime end end def self.down drop_table :audit_trails end end
app/models/audit_swpeeper.rb
class AuditSweeper < ActionController::Caching::Sweeper observe Person def after_destroy(record) log(record, "DESTROY") end def after_update(record) log(record, "UPDATE") end def after_create(record) log(record, "CREATE") end def log(record, event, user = controller.session[:user]) AuditTrail.create(:record_id => record.id, :record_type => record.type.name, :event => event, :user_id => user) end end
然后我们需要告诉PeopleController在操作Person对象时用audit_sweeper来记录操作
app/controllers/people_controller.rb
cache_sweeper :audit_sweeper
由于auditing机制依赖与Rails的缓存代码,所以确保config/environments/development.rb里将config.action_controller.perform_caching设置为true
发表评论
-
使用 Capistrano 对rails app进行快速部署
2011-02-23 15:05 1759仅转载了,还没有用过,如果有问题可留言,大家一起讨论 在进行 ... -
ruby进行web serveice的方法
2011-02-15 14:37 835require 'soap/wsdlDriver' #url ... -
友好的登录系统
2011-01-28 10:54 672友好的登录系统 按照目前的代码,如果管理员尝试在未登录的状态下 ... -
第三版
2011-01-27 15:36 0view格式化价格 <%= number_to_curr ... -
Ruby中 respond_to? 和 send 的用法
2011-01-25 14:24 1239obj = Object.new if obj ... -
rails 路由
2011-01-25 14:17 11504 正则路由 Rails支持 ... -
rails 验证自定义方法
2011-01-25 11:37 1565可以自定义validate(), 这个方法在每次保存数据时都会 ... -
flash-notice自动消失
2011-01-25 11:12 1367flash 提示的自动消失: <body onloa ... -
密码加密和解密
2011-01-25 11:11 1192two way crypt: #http://crypt. ... -
开发环境页面直接调试
2011-01-25 11:06 666#首先,在layout里边的合适地方添加debug,并且使 ... -
对静态页面进行缓存
2011-01-24 14:35 928对于静态站点我们可以利用Rails的cache来管理,如在co ... -
rvm部署rails3和ruby192
2011-01-21 10:39 10851. Installing RVM $ sudo gem ... -
rails要理解
2011-01-18 10:57 601清单3 module Dictionary ... -
rails 加载不同插件设置
2010-12-31 14:49 374config.plugins = [ :all ] co ... -
参考rails 下拉
2010-12-31 14:47 617对于多数的model的select列表,我都会用model属性 ... -
自定义form提示
2010-12-31 10:53 678自定义form错误提示 application_contro ... -
提高rails开发模式下静态页加载速度
2010-12-31 10:44 873http://github.com/thedarkone/ra ... -
rails 连接多个数据库
2010-12-30 10:31 748首先在database.yml中加入以下代码,其中cg_clo ... -
瘦controller,富model
2010-12-28 14:02 735----先看这么一段rhtml代码:渲染模板中加入了这么多的逻 ... -
rake 命令一览
2010-12-28 11:21 985rake db:abort_if_pending_migr ...
相关推荐
易语言远程操作数据库源码,远程操作数据库,记录增加,记录查找,记录修改,记录删除
关于给用户分配资源(数据库表)中某条记录的操作权限问题-行控制
作业6 JDBC操作数据库 作业类型:验证性实验 实验目的:理解JDBC接口操作数据库的方法,熟练掌握数据的增删改查。 实验内容: 1. 在MySQL或其他DBS中创建一个数据库TestDB,其中创建表user,表至少3个字段(编号,...
spring的aop方式,审计记录用户操作步骤服务,mysql数据库
dbtemplate类集合了对数据库的访问操作,主要有以下几个操作: 1. queryrows:返回多行记录 2. queryrow:返回为单条记录 3. queryforint:查询单字段,返回整数 4. queryforfloat:查询单字段,...
为方便大家下载,由5分改为0分!...用户只需使用DBOperationAdapter即可完成对数据库的常见操作. 运用设计模式,用户只要改改配置文件即可跨数据库.乱码问题自己解决目前支持mysql/ms sqlserver. enjoy. :)
为操作数据库的手段,并运用增删改查的数据库常用查询语句。 第十五章:网页浏览和网址限制功能模块,利用数据库中的网址记录,通过查询匹配 限制用户对某些特定网址的访问,并作访问记录,主要应用DAO方式访问...
本文将介绍如何使用触发器,把DML(数据操作语言)对数据库中的特定数据表的改动记录下来。因为我们要写入文件系统,安全权限开始有影响了。所以,执行插入操作的用户必须具备该文本文件的读写权限。因此,设计一个C...
1.试述数据、数据库、数据库管理系统、数据库...数据库管理系统:位于用户和操作系统之间的一层数据管理软件,属系统软件范畴; 数据库系统:计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统、应用系统
作为企业级大型、通用对象关系型数据库管理系统,神通数据库为用户提供的功能包括: • 支持丰富的数据类型 神通数据库所支持的数据类型包括:字符串类型、位串类型、精确数值类型、布尔型、近似数值类型、 日期类型...
软件工程中常用数据库操作的SQL语句软件工程中常用数据库操作的SQL语句软件工程中常用数据库操作的SQL语句
JSP与数据库的链接,日期获取ATM存取款功能实现,登出功能的实现登录与注册功能实现,session跳转个人信息查询功能实现本系统采用了可视化的集成开发环境MyEclipse 10编辑用户界面,以MySQL为后台数据库并以...
数据库管理系统(Database Management System,DBMS):专门用于建立和管理数据图的一套软件,介于应用程序和操作系统之间 数据库系统(Database System, DBS):是指在计算机中引入数据库技术之后的系统。 包括:...
多用户使用该软件时,可以随时记录某个用户对数据库的操作。 7。可以为进行压力测试,自动生成数据。 8。导出表结构,根据表结构和数据库中的表结构进行差分。 9。导出DB结构,和现有环境DB进行表结构差分 10。导出...
纯源代码,通过它可以实现用户对系统操作的纪录
t-sql 数据库习题 1.描述事物的符号记录称为________。 A、信息 B、数据 C、记录 D、记录集合...3._____是位于用户与操作系统之间的一层数据管理软件。 A、数据库系统 B、数据库管理系统 C、数据库 D、数据库应用系统
数据库管理系统是位于用户与操作系统之间的一层数据管理软件。包括:数据库定义功能,数据组织、存储和管理,数据操纵功能,数据库的事务管理和运行管理,数据库的建立和维护功能。 数据库系统是指在计算机系统中...
数据库系统由数据库、操作系统、数据库管理系统、开发工具、应用系统、数据库管理员以及数据库用户组成。 (4) 概念模型是用简单、清晰、用户易于理解的概念来描述现实世界具体事物及事物之间的关系。它是现实世界...
自己在linux 下处理oracle 用户锁定的操作记录,希望能方便有需要的人。
位于用户与操作系统之间的一层数据管理软件。主要功能包括以下几个方面: 1.数据定义功能:数据定义语言(Data Definition Language,DDL) 2.数据操纵功能: 数据操纵语言(Data Manipulation Language,DML) 3.数据库的...