企业汇报系统细节追加(一)

本文介绍了Rails应用中session管理、查询操作、报表生成等实用技巧,并涵盖了时间处理、时区配置、数据验证及用户访问控制等方面的内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1)session的使用:

  赋值:session[:user_id]=@user.id

  取值:logger.infosession[:user_id]

  注意:将controller里面protect_from_forgery语句去掉,使能sessionsession也是Hash对象--key>value,我们通过key[:user_id]找到对应的value[126]

2)查询:

  find:调用类名时,必须通过ID查询;

  where:用于对其他字段进行查询

3)报表生成:

  Echartshttp://echarts.baidu.com/index.html

4)rails控制台启动:

  $rails c

  irb>ps -aux |grep rails#打印当前rails进程信息

  irb>kill-9xxx #强制杀死进程xxx

5)按时间查询记录

  q_time= Time.parse params[:p_time]

  <time.Parse("01/02/2006","02/08/2015")从字符串转为时间戳,第一个参数是格式第二个是要转换的时间字符串>

  @docs = Doc.where("p_time<=?",q_time) #在Doc表里查询p_time<=参数为q_time的记录

6)设置时区

  config/application.rb

  # config.time_zone = 'Central Time (US &Canada)' (在该句下面插入以下语句)

  config.time_zone = 'Beijing'(新增语句)

  config.active_record.default_timezone =:Beijing

7)rails数据验证

  Rubyon railsguideshttp://guides.rubyonrails.org/active_record_validations.html

8)用户访问控制

  a>app/controllers/application_controller.rb中添加如下代码:

  classApplicationController < ActionController::Base

   before_filter:authorize

   protect_from_forgery

   protected

   def authorize

    unlessUser.find_by_id(session[:user_id])

    redirect_to'/user/index'

    end

   end

 end

  b>app/controllers/user_controller.rb

   首行代码添加:skip_before_filter:authorize


<b>修改于第四周周五</b>





     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值