Skip to content

Instantly share code, notes, and snippets.

View willnet's full-sized avatar
👶
parenting

Shinichi Maeshima willnet

👶
parenting
View GitHub Profile
@willnet
willnet / inverse_of.rb
Created May 17, 2017 08:24
inverse_of が必須なケース
class User < ApplicationRecord
has_one :post
end
class Post < ApplicationRecord
belongs_to :fuga, class_name: 'User'
end
u = User.new
post = u.build_post
require 'test/unit'
class Person
include CheckedAttributes
attr_checked :age do |v|
v >= 18
end
end
require 'test/unit'
class Person
attr_checked :age do |v|
v >= 18
end
end
class TestCheckedAttribute < Test::Unit::TestCase
def setup
require 'test/unit'
class Person; end
class TestCheckedAttribute < Test::Unit::TestCase
def setup
add_checked_attribute(Person, :age) { |v| v >= 18 }
@bob = Person.new
end
@willnet
willnet / eval.rb
Last active December 14, 2016 04:45
require 'test/unit'
class Person; end
class TestCheckedAttribute < Test::Unit::TestCase
def setup
add_checked_attribute(Person, :age)
@bob = Person.new
end
@willnet
willnet / rescue.rb
Last active November 2, 2016 08:02
def hoge
raise
point = nil
rescue
p point #=> nil が出力される
end
# ここに with の定義を書く
@willnet
willnet / autosave_testcase.rb
Last active September 1, 2016 06:57
autosave testcase
begin
require "bundler/inline"
rescue LoadError => e
$stderr.puts "Bundler version 1.10 or later is required. Please update your Bundler"
raise e
end
gemfile(true) do
source "https://rubygems.org"
gem "rails", github: 'rails/rails'
@willnet
willnet / be_a_rails_contributer.md
Last active August 21, 2023 05:44
Railsコントリビュータへの道

これはなに

  • Railsにプルリクストを送るときに知っておくと便利なお作法集
  • Railsにプルリクエストを送りたいけど何から始めたらいいのかわからない人向けの指針

お作法についてはRuby on Rails に貢献する方法 | Rails ガイドを参考にしています。

前提知識

Railsのコードを読むには、最低限次の二つの知識があったほうがよいです

@willnet
willnet / gist:a67beba9a9f19cfd7d06f055a38c11f5
Created May 8, 2016 12:00
Ruby の thread とクロージャ
require 'thread'
hash = {}
a = Thread.new do
connection = 'A'
hash[:a] = -> { puts connection }
end