do-not-delete-softly

 do-not-delete-softly

70e13d9877054026fda46d5a5b53a236?s=128

MOROHASHI Kyosuke

August 31, 2015
Tweet

Transcript

  1. ࿦ཧ࡟আΛ ͠ͳ͍ 2015-08-31 ࿦ཧ࡟আCasual Talks #1 @moro

  2. ॾڮګհ(@moro) Kyosuke MOROHASHI

  3. None
  4. None
  5. ఻͍͑ͨ͜ͱ

  6. ࿦ཧ࡟আͳΜͯ ͳ͔ͬͨ

  7. ‣࡟আ͍ͯ͠ͳ͍ ‣࡟আ͍ͯ͠ͳ͍ͷͰ࡟আͱ ݺͿ΂͖Ͱͳ͍ɻ ‣ͥΜͥΜ࿦ཧతͰ΋softͰ ΋ͳ͍.

  8. ࿦ཧ࡟আΛ
 ͨ͘͠ͳΔͱ͖

  9. ઈ൛঎඼ʹ
 ࡟আϑϥάΛ෇͚͍ͨ

  10. ࣮ݱ͍ͨ͜͠ͱ ‣ ઈ൛ͨ͠঎඼Λ࿦ཧ࡟আͯ͠ɺ Ұཡ΍ݕࡧͰදࣔ͞Εͳ͍Α ͏ʹ͍ͨ͠ɻ ‣ ৽͘͠ߪೖ΋Ͱ͖ͳ͍ͨ͘͠ɻ

  11. ຊ౰ʹ”࡟আ”ͳͷ͔? ‣աڈʹങͬͨސ٬ͷߪങཤ ྺʹ͸දࣔ͢Δ ‣ച্ूܭͷର৅ʹͳΔ

  12. ΄Μͱ͏ʹཉ͔ͬͨ͠΋ͷ status = :ઈ൛

  13. class Product < AR::Base scope :sellable, -> { where.not(status: :絶版)

    } end class ProductsController < AppC def index @products = Product.sellable.order(nantoka) end end class Backroom::ProductsController < AppC def index @products = Product.order(kantoka) end end
  14. default_scope :sellable 
 ΋ඇਪ঑ɻʮσϑΥϧτʯ ͡Όͳ͍Ͱ͢͠

  15. class Order < AR::Base default_scope -> { where(deleted_at: nil }

    end # 忘れた頃に def clean_old_orders(orders) orders.unscoped.destroy_all # さらに忘れた頃に clean_old_orders(Order.where(company_id: 42))
  16. ୀ৬ͨ͠ձһʹ ࡟আϑϥάΛ෇͚͍ͨ

  17. ࣮ݱ͍ͨ͜͠ͱ ‣ୀձͨ͠ձһ͸ɺ
 ϩάΠϯग़དྷͳ͍Α͏ʹɺ ࿦ཧ࡟আ͍ͨ͠

  18. ຊ౰ʹ”࡟আ”ͳͷ͔? ‣ ͦͷձһͷσʔλ͸Ͳ͏ͳΔ? ‣ a: ͥΜͿফ͢ ‣ b: ͦͷ··࢒͢ ‣

    c: ಗ໊ͱͯ͠࢒͢ ‣ d: γεςϜϢʔβ΁෇͚ସ͑
  19. ຊ౰ʹ”࡟আ”ͳͷ͔? ‣a: ͥΜͿফ͢ ‣ ফ͠·͠ΐ͏!!! ‣ ෆ҆ͳΒඞཁͳͱ͜Ζ͚ͩ ΞʔΧΠϒ

  20. ຊ౰ʹ”࡟আ”ͳͷ͔? ‣b: ͦͷ··࢒͢ ‣ ୀձձһΛ status = :ログイ ン不可 ʹ͢Δ


    (status͸ͦΕ͸ͦΕͰ pros/cons ͋Δ΋ͷͷ…) ‣ೝূ৘ใ͚ͩফ͢
  21. ຊ౰ʹ”࡟আ”ͳͷ͔? ‣c: ಗ໊ͱͯ͠࢒͢ ‣ݸਓ৘ใͳͲΛফ͢Α͏ɺ ॲཧΛ଍͢

  22. ຊ౰ʹ”࡟আ”ͳͷ͔? ‣ d: γεςϜϢʔβ΁෇͚ସ͑ ‣ͦ͏͍͏ॲཧΛ଍͢

  23. ຊ౰ʹ”࡟আ”ͳͷ͔? ‣ a: Ҏ֎͸ʮ࡟আʯ͍ͯ͠ͳ͍ ‣ a: Ұॹʹফ͢ ‣ b: ͦͷ··࢒͢

    ‣ c: ಗ໊ͱͯ͠࢒͢ ‣ d: γεςϜϢʔβ΁෇͚ସ͑
  24. ʮ࿦ཧ࡟আʯͰ͸ͳ͘
 ΍Γ͍ͨ͜ͱʹԊͬͨઃܭΛ

  25. อ؅ظݶͷ ա͗ͨσʔλʹ ࡟আϑϥάΛ෇͚͍ͨ

  26. ࣮ݱ͍ͨ͜͠ͱ ‣ҰఆظؒҎ্ݹ͍σʔλΛ ࿦ཧ࡟আ͠ɺҰཡʹදࣔ͞ Εͳ͍ͨ͘͠ɻ

  27. ຊ౰ʹ”࡟আ”ͳͷ͔? ‣ ϩάΛऔͬͯফ͢ɻ ‣ ࡟আͰ͖ͦ͏ɻ ‣ ؂ࠪʹඞཁetcͳͲͳΒ࢒͢ɻ

  28. ຊ౰ʹ”࡟আ”ͳͷ͔? ‣ٯʹߟ͑Δɻ ‣ Ұཡʹදࣔ͢Δ߲໨Λ
 ৽͍͠΋ͷ͚ͩʹ͢Δɻ ‣ σʔλྔͷݒ೦ͱɺUXͷ
 ݒ೦͸ͦΕͧΕผͷ໰୊ɻ

  29. default_scope と同じ問題 一番最初の画面に出すもの、が デフォルトなわけではない。

  30. ͳͥ࿦ཧ࡟আΛ ͢΂͖Ͱͳ͍ͷ͔
 (reprise)

  31. ‣ࢭΊ͕࣌Θ͔Βͳ͍ɻ ‣ શςʔϒϧʹ࡟আϑϥά ‣ ͭͶʹJOINͯ͠ϑϥάνΣοΫ

  32. ‣σʔλͷऴΘΓΛ
 ઃܭͰ͖͍ͯͳ͍ɻ ‣ઃܭͰ͖͍ͯͳ͍ͷͰ
 ࢭΊ͕ܾ࣌ΊΒΕͳ͍ɻ

  33. ͳͷʹʮ࿦ཧ࡟আʯͰ
 Կ͔ΛݴͬͨงғؾʹͳΔɻ 
 ࢛จࣈख़ޠ͜Θ͍ɻ

  34. ࿦ཧ࡟আΛ
 ͠ͳ͍

  35. ‣σʔλͷʮऴΘΓํʯΛ
 ;ͭ͏ʹઃܭ͢Δɻ ‣࢛จࣈख़ޠͰԿ͔Λ
 ݴͬͨؾʹͳΒͳ͍ɻ

  36. ͋ΘͤͯಡΈ͍ͨ: http://qiita.com/Jxck_/items/156d0a231c6968f2a474

  37. ‣σʔλͷʮऴΘΓํʯΛ
 ;ͭ͏ʹઃܭ͢Δɻ ‣࢛จࣈख़ޠͰԿ͔Λ
 ݴͬͨؾʹͳΒͳ͍ɻ