NOTE: it need install redis server and (redis) gem.
rkorm it also depends on the riak-client gem.so you must gem install riak-client.
class User
include Rkorm
property :id
property :name
property :email
end
user = User.new
user.id = 1
user.name = 'test'
user.email = '[email protected]'
user.save
# also in initialize
user = User.new id: 1, name: 'test', email: '[email protected]'
user.save
# set riak bucket
class Account
include ::Rkorm
set_bucket_name :accounts
end
# set model attributes
class Account
include ::Rkorm
set_bucket_name :accounts
property :email
property :password
end
# if you has protected attributes
class Account
include ::Rkorm
set_bucket_name :accounts
property :email
property :salt
property :encrypt_password
property_protected :salt, :encrypt_password
end
account = Account.new
account.salt = 123456 # has no password= method.
#
class Image
include ::Rkorm
set_bucket_name :images
content_type 'image/jpeg'
end
image = Image.new do |image|
image.raw_data = File.read('xxx.jpg')
end
# riak links
user = User.new do |u|
u.id = 1
u.name = 'test'
u.email = '[email protected]'
u.links(bucket, key, tags).links(other_bucket, other_key, other_tags)
end
user.save
# riak get object
user = User.get(key)
user.id # => 1
user.name # => 'test'
user.name = 'test modify'
user.save
# riak delete object
user = User.get(key)
user.deleteCopyright 2012 HuyaZhao.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
All of the files in this project are under the project-wide license unless they are otherwise marked.