Skip to content

Instantly share code, notes, and snippets.

View amyroi's full-sized avatar

Atsuko Mori amyroi

  • Freelance
  • Tokyo
View GitHub Profile
@amyroi
amyroi / zeus.rb
Last active August 29, 2015 14:07
require 'zeus/rails'
class CustomPlan < Zeus::Rails
def server Dir.chdir(::Rails.application.root)
`unicorn_rails`
end
end
Zeus.plan = CustomPlan.new
str = ''
yaml_test = str.to_yaml
=>"--- \"\"\n"
YAML.load(yaml_test)
=> ""
class Facebook::Notification
attr_accessor :canvas_auth, :graph
def initialize
conf = Rails.configuration.facebook_canvas
@canvas_auth = Koala::Facebook::OAuth.new(conf[:app_id], conf[:app_secret])
@graph = Koala::Facebook::API::new(canvas_auth.get_app_access_token, conf[:app_secret])
end
require 'spec_helper'
describe MyModel do
it "should create a new instance given valid attributes" do
Factory(:my_model)
end
describe "name" do
it "should be required" do
blank = Factory.build(:my_model, :name => "")
@amyroi
amyroi / strong_parameters + nested_attributes + serialize
Created April 13, 2015 07:58
strong_parameters + nested_attributes + serialize
# model
serialize :body
# controller
def inquiry_params
params.require(:inquiry).permit(:read_at, :inquiry_form_id, inquiry_contents_attributes: [{body: []}, :part_id])
end
# spec/support/site_prism/user_page.rb
class UserPage
class FormBase < SitePrism::Section
element :first_name, "input[name='user[first_name]']"
element :last_name, "input[name='user[last_name]']"
element :button, "input[name='commit']"
def input(args)
first_name.set args[:first_name]
last_name.set args[:last_name]
button.click
@amyroi
amyroi / active_model_account.rb
Last active September 8, 2015 03:10
SimpleForm + ActiveModel:validation
# app/models/account.rb
class Account
include ActiveModel::Model
validates :name, presence: true
def initialize
# ~
end
end
@amyroi
amyroi / app_models_syllabus.rb
Last active September 29, 2015 05:11
ActiveModel:FactoryGirl.rb
# app/models/syllabus.rb
class Syllabus
include ActiveModel::Model
attr_accessor :records, :academic_year, :course
validates :academic_year, presence: true
def initialize(academic_year, course = nil)
@academic_year = academic_year
@course = course
@amyroi
amyroi / partitioning.rb
Created December 7, 2015 14:00
Railsでパーティショニング
# Gem
gem 'composite_primary_keys'
# 複合keyの設定の為、idのprimary_keyを解除して、複合keyでindex追加
class CreatePageviews < ActiveRecord::Migration
def change
create_table :pageviews, id: false do |t|
t.integer :id, null: false
t.integer :article_id, null: false
t.integer :category_id, null: false
@amyroi
amyroi / instance_method_hook.rb
Created March 16, 2016 06:00
インスタンスメソッドへHookの設定
module Hook
def increment
super
expire
end
end
class Ranking
prepend Hook