Welcome to 扒拉小记!

linux 周期归档rails log logrotate日志分割

logrotate是一个让日志文件自动按周期归档的工具。以避免日志文件过大。 1. 安装 Ubuntu: sudo apt-get install logrotate redhat: sudo yum install logrotate 2. 配置 $ sudo vim /etc/logrotate.conf /path_to_app/log/production.log { daily #按日阶段 missingok rotate 7 #日志文件保留7天 compress #压缩 delaycompress...

Rails 5 中 redirect_to :back

原文 Rails 5 中 redirect_to :back 先说Rails 5 中的最新用法 在 Rails 5 中用 redirect_back(fallback_location: root_path) 来代替原先的 redirect_to :back 因为 redirect_to :back 中 :back 即等于 request.env["HTTP_REFERER"] 但在网络的环境中请求来源是多样的,举一个例子 当你直接复制链接到地址栏里访问时,若页面中使用了 redirect_to :back ,那么此时就会出错。...

postgresql命令创建只读用户

第一种方法: 1.创建一个用户名为readonly密码为123456的用户 CREATE USER readonly WITH ENCRYPTED PASSWORD '123456'; 2.更新用户默认为只读事务 alter user readonly set default_transaction_read_only=on; 3.把所有库的public的USAGE权限给到readonly GRANT USAGE ON SCHEMA public to readonly; 4.授予select权限(要进入到具体数据库操作在哪个db环境下执行就授予那个db的权限) grant select on all tables in...

Active Record and PostgreSQL 字段为json

参考链接: This guide covers PostgreSQL specific usage of Active Record. How to use PostgreSQL’s datatypes. 如何使用PostgreSQL字段的数据类型 How to use UUID primary keys. 生成uuid主见 How to implement full text search with...

rails发送邮箱配置

rails正式环境配置邮箱。 企业邮箱有两个端口25(非ssl)和465(ssl加密)。配置错误,可能会导致本地发送成功,但是部署到正式环境会失败,所以确定服务器是否使用ssl。 config/environments/production.rb config.action_mailer.raise_delivery_errors = true config.action_mailer.perform_caching = false config.action_mailer.perform_deliveries = true config.action_mailer.delivery_method = :smtp config.action_mailer.smtp_settings = { address: smtp.263.net, port: 25, #如果服务器使用ssl加密(https)那么要注意,端口是465. domain: 263.com, user_name: admin@263.com邮箱, password: 邮箱登陆密码, authentication:...

rails ActiveJob Sidekiq 配置

1. jobs目录生成job文件 执行命令rails g job demo_job class DemoJobJob < ApplicationJob queue_as :default def perform(*args) # Do something later end end 2.配置config/initializers/sidekiq.rb,使用redis url = "redis://127.0.0.1:6379/0" redis_config = { url: url, namespace:...

ActionCable作为API,被app调用例子

1.cable.yml配置 local: &local url: redis://localhost:6379 development: *local test: *local production: adapter: redis url: redis://localhost:6379/1 2.app/channels/目录下创建 room_channel.rb class RoomChannel < ApplicationCable::Channel def subscribed stream_from "room_channel" #stream_from params[:room] #可以是客户端创建订阅时的参数临时创建 end def unsubscribed...

ruby on rails 导出csv中文乱码

最近rails 做csv导出,碰到了中文乱码问题,解决方法如下 header = ‘EF BB BF’.split(' ').map{|a|a.hex.chr}.join() CSV.generate do |csv| csv << header csv << ['姓名','手机'] csv << ['内容1','内容2'] end 但是以上解决方法会在文件上方多出一行。其实上述方法可以写为: CSV.generate do |csv| csv << ["\xEF\xBB\xBF姓名","手机"] csv <<...

git仓库删除所有提交历史记录,成为一个干净的新仓库

把旧项目提交到Git上,但是会有一些历史提交记录,这些历史记录中可能会有项目密码等敏感信息。如何删除这些历史记录,形成一个全新的仓库,并且保持代码不变呢? 1.Checkout git checkout --orphan latest_branch 2. Add all the files git add -A 3. Commit the changes git commit -am "commit first" 4. Delete the branch git branch -D...

Jekyll Admin

1. 安装 1. gem 'jekyll-admin', group: :jekyll_plugins 2. bundle install 2.用法 启动Jekyll 项目通过命令 (bundle exec jekyll serve) 访问jekyll项目后台: http://localhost:4000/admin