Skip to content

Instantly share code, notes, and snippets.



Block or report user

Report or block DiveInto

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
DiveInto / add index.rb
Created Mar 26, 2012
how to add index using rails migration
View add index.rb
class AddIndexToFavourites < ActiveRecord::Migration
def self.up
add_index :favourites,[:user_id,:sell_info_id],:unique => true
def self.down
remove_index :favourites,[:user_id,:sell_info_id]
DiveInto / add field.rb
Created Mar 30, 2012
add field using rails generate
View add field.rb
rails generate migration add_password_to_users encrypted_password:string
class AddPasswordToUsers < ActiveRecord::Migration
def self.up
add_column :users, :encrypted_password, :string
def self.down
remove_column :users, :encrypted_password
DiveInto / flash.rb
Created Apr 4, 2012
how to use flash to notice
View flash.rb
flash[:notice] = "Item successfully saved as your favourite!"
#很奇怪,看官方文档,rails3里应该flash消息应该可以直接用notice(类似: redirect_to :action=>:XXX,:notice => "msg"),但我试了不行,不知为何,所以这儿还是用的老的style,记下备忘。
DiveInto / condition.rb
Created Apr 4, 2012
condition syntax,shows usage of ? :
View condition.rb
( == nil)? false:true
DiveInto / mongoOp.scala
Created Apr 6, 2012
mongo ops using scala/java
View scope.rb
class SellInfo < ActiveRecord::Base
belongs_to :book
belongs_to :user
scope :onsale,:conditions => ['deal_status is not "sold"']
scope :saled,:conditions => {:deal_status => "sold"}
View where.rb
@unsold = SellInfo.where("user_id = ? and deal_status != 'sold'",
@sold = SellInfo.where("user_id = ? and deal_status = 'sold'")
DiveInto / condition.rb
Created Apr 16, 2012
java lock and it's condition
View condition.rb
// Condition and ReentrantLock
class BoundedBuffer {
final Lock lock = new ReentrantLock();
final Condition notFull = lock.newCondition();
final Condition notEmpty = lock.newCondition();
final Object[] items = new Object[100];
int putptr, takeptr, count;
public void put(Object x) throws InterruptedException {
View ruby.rb
#== Never use for, unless you know exactly why. Most of the time iterators should be used instead. for is implemented in terms of each (so you're adding a level of indirection), but with a twist - for doesn't introduce a new scope (unlike each) and variables defined in its block will be visible outside it.
arr = [1, 2, 3]
# bad
for elem in arr do
puts elem
# good
arr.each { |elem| puts elem }
DiveInto /
Created Jun 19, 2012
install sun-java on ubuntu
$ sudo apt-get install python-software-properties
$ sudo add-apt-repository ppa:sun-java-community-team/sun-java6
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk
$ sudo apt-get remove openjdk-6-jdk --purge -y
$ sudo apt-get autoremove
sudo update-java-alternatives -s java-6-sun
You can’t perform that action at this time.