Skip to content

Instantly share code, notes, and snippets.

@sunny0425
sunny0425 / image_from_url.rb
Created July 16, 2012 08:48
get image from link(use paperclip)
require "open-uri"
require 'tempfile'
def image_from_url(url)
ext = File.extname(url)
filename = File.basename(url, ext)
temp = Tempfile.new([filename, ext])
str = open(url).read
temp.write(str)
@sunny0425
sunny0425 / mountain-lion-brew-setup.markdown
Created August 1, 2012 03:27 — forked from myobie/mountain-lion-brew-setup.markdown
Get Mountain Lion and Homebrew to Be Happy

Get Mountain Lion and Homebrew to Be Happy

1) Install XCode 4.4 into /Applications

Get it from the App Store.

2) Install Command Line Tools

In XCode's Preferences > Downloads you can install command line tools.

set :rails_env, :production
set :unicorn_binary, "/usr/bin/unicorn"
# NOTICE: 不可在此外部使用 current_path,否则将会使用固定此文件下的 deploy_to 或默认的 deploy_to
# set :unicorn_config, "#{current_path}/config/unicorn.rb"
# set :unicorn_pid, "#{current_path}/tmp/pids/unicorn.pid"
namespace :deploy do
task :start, :roles => :app, :except => { :no_release => true } do
unicorn_config = "#{current_path}/config/unicorn.rb"
unicorn_pid = "#{current_path}/tmp/pids/unicorn.pid"
batch = [{:name => "mongodb"}, {:name => "mongoid"}]
Article.collection.insert(batch)
# my example
batch = [{ :name => '最高权限管理员', :level => DbRole::SuperAdmin }, { :name => '内容管理员', :level => DbRole::ContentAdmin }, { :name => '普通用户', :level => DbRole::NormalUser }]
DbRole.collection.insert(batch)
@sunny0425
sunny0425 / nginx.conf.partial
Created August 28, 2012 03:37
ngix read static files
# css|js|ico|gif|jpg|jpeg|png|txt|html|htm|xml|swf|wav这些都是静态文件,但应分辨,js、css可能经常会变,过期时间应小一些,图片、html基本不变,过期时间可以设长一些
location ~* ^.+\.(gif|jpg|jpeg|png|txt|html)$ {
root /www/data/project/current/public;
access_log off;
expires 30d;
}
class PictureFile < ActiveRecord::Base
  attr_accessor :delete_file
 
  after_destroy do |picture_file|
    picture_file.delete_file = picture_file.filepath
  end
 
  after_commit do |picture_file|
    if picture_file.delete_file && File.exist?(picture_file.delete_file)
      File.delete(picture_file.delete_file)
Some brief instructions on how to use Sprocket 2 in Rails to get CoffeeScript
powered JS and SASS powered CSS with YUI compression all via the magic of rack.
This stuff will be native in Rails 3.1 and the layout of the files on the
filesystem will be different but this guide will get you working with it
while we wait for all that to finalize.
Ignore the number prefixes on each file. This is just to ensure proper order in the Gist.
It's based on eric1234 gist https://gist.github.com/911003. ijust made it 3.1 compliant in terms of convention
@sunny0425
sunny0425 / search_friend_by_fql.rb
Created November 14, 2012 08:28
use fql and fb_graph to search friends by user name for facebook
# reference:
# - https://github.com/nov/fb_graph
# - https://gist.github.com/752914
# - http://developers.facebook.com/docs/reference/fql/
# - http://stackoverflow.com/questions/7352296/facebook-fql-search-page-with-strpos-doesnt-work
require 'fb_graph'
user_access_token = 'USER_ACCESS_TOKEN'
fb_user = FbGraph::User.me(user_access_token)
FbGraph::Query.new("SELECT uid, name, pic_square FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) AND strpos(lower(name),'hen') > 0").fetch(user_access_token)
@sunny0425
sunny0425 / server.js
Created November 24, 2012 09:48
七天七语言--node.js篇 作业(http://be001.com/jams/445
// 测试:
// http://localhost:8888/?short_url=http://t.cn/zjUg9kQ(正确解析)
// http://localhost:8888/?short_url=http://t.cn/zj4SIjW (有https请求,会报错)
var http = require('http');
var url = require('url');
function myParse(short_url, callback){
var result = '';
try{
# first scheme
before_filter :default_format_xml
# Set format to xml unless client requires a specific format
# Works on Rails 3.0.9
def default_format_xml
request.format = "xml" unless params[:format]
end
# second scheme