Skip to content

Instantly share code, notes, and snippets.

Avatar
:shipit:
aha

DiveInto

:shipit:
aha
View GitHub Profile
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
end
# good
arr.each { |elem| puts elem }
@DiveInto
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 where.rb
@unsold = SellInfo.where("user_id = ? and deal_status != 'sold'", current_user.id)
@sold = SellInfo.where("user_id = ? and deal_status = 'sold'")
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"}
end
@DiveInto
DiveInto / mongoOp.scala
Created Apr 6, 2012
mongo ops using scala/java
@DiveInto
DiveInto / condition.rb
Created Apr 4, 2012
condition syntax,shows usage of ? :
View condition.rb
(req.save == nil)? false:true
@DiveInto
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
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
end
def self.down
remove_column :users, :encrypted_password
end
@DiveInto
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
end
def self.down
remove_index :favourites,[:user_id,:sell_info_id]
end
end
You can’t perform that action at this time.