Home
Wade Ruby
Cancel

Ruby 如何require一个文件(rails.root不好使。file.dirname(__file__)好使)

呃。。。算了,这个语法问题,我不想知道为什么。能用就行了。 代码这样写不行,会报错: require File.expand_path(Rails.root + "/lib/api_client.rb")这样写就可以了:</span> require File.expand_path(File.dirname(__FILE__) + "/../lib/api_client.rb...

Nginx 在nginx下使用阿里云ssl证书(务必开启443端口啊)

现在不单单是苹果, 连 google play都要求ssl 了 ( https 请求)  所以, 记录下使用的方法 1. 登陆到阿里云,   ->  安全(云盾) ->  证书服务, 可以看到, 之前申请下来的证书:  2. 然后, 阿里云会非常贴心的给出提示:  把下载后得到的zip 文件( 两个文件,一个是.p...

建立 自动化抓取的过程

1. 创建 code:text 这样的表 $ bundle exec rails g scaffold fetch_rules code:text 2. 向其中添加: 不同内容写到不同的分类中( 例如,你有两个表:  分类表,新闻表.  )我们想不同的分类中抓取不同的内容. $ bundle exec rails g migration add_category_id_to_fetch_ru...

Ruby 方法调用中的星号(star,splatoperator)

说来惭愧。这个知识真的没用到过。  https://stackoverflow.com/questions/918449/what-does-the-unary-operator-do-in-this-ruby-code 在ruby 中, * 也叫 splat operator, 专门为了方便的把一个 数组,作为多个参数传递给某个函数。 def hi name1, name2, ...

Vuejs中的视图层的变量加载过程

都集中在 <script> 区域中。 <template> </template> <script> export default { // 这个是页面加载前, 先把变量定义在这里。 相当于rails中声明了 @变量 data () { return { a: 1 } }, // 这个是页...

Rails 使用https的时候记得加上force_ssl这个参数

参考:https://stackoverflow.com/questions/15676596/what-does-force-ssl-do-in-rails 加上之后就好了。 除了不但使用https, 对于cookie 还使用了加密方式。 还允许使用HSTS方式。 修改  config/environments/production.rb 中的 force_ssl=true之后...

Vue打开页面的过程(从启动到加载所有页面)

1. 最初的最初,我们要知道  ./build/webpack.base.conf.js 这个文件,是webpack打包的主要配置文件 其中 module.exports = { entry : { app: './src/app.js' // 这里就定义了vue的入口文件 } } 知道了这个打包文件,我们就可以知道接下来的事儿了。 2. 找到index.h...

定制使用jqueryvalidationvalidate

参考: http://stackoverflow.com/questions/241145/jquery-validate-plugin-how-to-create-a-simple-custom-rule 先来个最简单的:  $.validator.addMethod( "valid_return_count", function(value, element)...

Ruby Ruby脚本中的几个基本变量$0,argv

$0:  当前文件的名称。 ARGV: 运行当前rb文件时,添加的 参数。 例如: # test.rb puts "=hi" puts ARGV puts "== $0 : #{$0}" 运行方式:  ruby test.rb  'argv1' =hi argv1 == $0 : test.rb

Mongoid的用法

直接参考这里:   https://docs.mongodb.com/ruby-driver/master/tutorials/5.1.0/mongoid-documents/ mongo db的话, 作用跟mysql 一样,都是数据库. 使用方式上不一样. 建议你先用命令行 试一试各种操作. 然后再在 rails 中使用 mongoid 来操作数据库(这个方式比 命令行要简...

Rails Before_action中可以直接render返回

一个例子: before_action :check_failed_and_return, :only => [:test] def test render plain: 'hihihi' end def check_failed_and_return render plain: 'error' # 这里加不加and return 都一样. ...

Rails的微信相关的gem和demo

gem:   https://github.com/Eric-Guo/wechat 中间件: https://github.com/lanrion/weixin_rails_middleware 先备用着. 自己一直希望有个wap站, 可以写一些东西, 但是又不依赖于 微信平台.

Rails 关于csrftoken,authenticitytoken一段非常精彩的论述

参考:  https://stackoverflow.com/questions/9141339/how-to-pass-the-csrf-token-between-rails-applications 大意是,难以在两个rails项目中共享csrf token  建议使用 api 加密, public_key ,private key 这样的方式

Rails中的sum,count,joins查询

挺好用。之前用的很少。  现在捡起来了,发现跟原生的SQL基本一个用法。都差不多。 照着例子做就可以了。 能大幅节省时间。 一个例子: 之前: 41 #amount = 0 42 #self.sales_checks.each do |sales_check| 43 # #sales_check.wins.each do |win| 44 ...

Rails高级知识:解决n+1的查询问题。使用bulletgem(极度推荐)

n + 1 问题挺难搞的。  别说新手,很多老手都会被 N  + 1问题困扰。  先说解决办法:  使用 includes, 在 where, 或者 find  等查询之前。 例如:  @fans = Fan.joins(:sales_checks) .includes([:sales...

Ruby 创建日期序列

参考: https://stackoverflow.com/questions/19093487/ruby-create-range-of-dates require 'active_support/all' class RailsDateRange < Range # step is similar to DateTime#advance argument def eve...

使用ruby来画图png。使用chunky_png和oily_png

refer to:  https://github.com/wvanbergen/oily_png, 和 https://github.com/wvanbergen/chunky_png 有个项目,给出好多个坐标, 需要画图。   搜了下, 可以使用 oily_png.  $ gem install chunky_png 然后,下面是一个例子: requi...

Ruby 一些不错的gem工具,记录一下

paranoid2:  看起来是把某条记录删除,实际上不删除. hashie : 增强型hash faraday: 发起网络请求 papertrail: 处理log. 把log保存到远程等等. angualr-rails:  rails上运行的angular  datagrid: 用来显示一个可以排序等等的多功能table.  gon: 在js中访问r...

Rails优化的一些心得。数据库没太大问题,rails返回都貌似正常的时候,如果还慢,一定是卡在了接口上!

TODO  如何优化微信第三方登陆?

使用bulletgem调试n+1问题,优化数据库查询

refer to:  https://github.com/flyerhzm/bullet 1. gem "bullet", :group => "development" 2. $ bundle install 3. 编辑 config/environments/development.rb 加上: 配置: (具体位置, 放到与其他config 位置相...