Websocket, Rails Active Record, Backbone
Appearance view ꡬνμ μλ£νλ€.
jujeong, sanamκ³Ό νμ΄νλ‘κ·Έλλ°μ μ§ν
μμΈ νμ΅ λ΄μ©
Rails ν
ν¬λ νν λ§
Rails Active Recordμμ μ¬λ¬ μμ± μ‘°κ±΄μΌλ‘ νλ²μ κ²μνκΈ°arrow-up-right λ₯Ό ν΅ν΄ Active Recordμμ μ’ λ κ°λ΅νκ² μΏΌλ¦¬λ₯Ό λ 릴 μ μμμ μκ²λμ΄ μ¨λ¨Ήμλ€. ꡬ체μ μΌλ‘ μλ₯Ό λ€μλ©΄
Copy chat_ban = ChatBan.where(user_id: params[:user_id]).find_by_banned_user_id(params[:banned_user_id]) μμ²λΌ μΈλ°μμ΄ λ³΅μ‘ν 쿼리λ₯Ό μλμ²λΌ λ°κΏ μ μλ€λ κ².
Copy chat_ban = ChatBan.find_by_user_id_and_banned_user_id(params[:user_id], params[:banned_user_id]) ννΈ whereμλ ν΄μ¬λ₯Ό λκΈΈ μ μλ€. λλΆμ κ²μ 쑰건μ μλμ²λΌ μ€μ¬λ²λ¦΄ μ μλ€.
Copy # chat_ban = ChatBan.where(Hash[*params]) μλλ μ±
루λΉλ‘ λ°°μ°λ κ°μ²΄μ§ν₯ λμμΈμ μ½κ³ μ μ κ°λ΅ν λ©λͺ¨λ€.
2μ₯ λ¨μΌ μ±
μ μμΉμ λ°λ₯΄λ ν΄λμ€ λμμΈνκΈ°
λ¨μΌ μ±
μ μμΉμ μ μ€μνκ°
ν κ° μ΄μμ μ±
μμ΄ μλ ν΄λμ€λ μ¬μ¬μ©μ΄ μ΄λ ΅κΈ° λλ¬Έμ΄λ€. μ΄ ν΄λμ€ μμμ μ¬λ¬ μ±
μλ€μ μλ‘ μ½ν μμ κ°λ₯μ±μ΄ λλ€. λλ¬Έμ μ½κ² κ°μ Έλ€ μΈ μ μλ€.
λ°λ©΄ λ¨μΌ μ±
μ ν΄λμ€λ νλμ μ±
μλ§ κ°μ§κ³ μκΈ° λλ¬Έμ μ½κ² κ°μ Έλ€ μΈ μ μλ μ½λ(pluggable units)λ€.
ν΄λμ€μ λ¨μΌ μ±
μλ§ μλμ§ μ΄λ»κ² μ μ μμκΉ
ν΄λμ€λ λ¨μν΄μΌνλ€ λ λ§μ λͺ
μ¬νμ. ν΄λμ€λ μ΅λν μμΌλ©΄μλ μ μ©ν κ²λ§ νν΄μΌ νλ€.
ν΄λμ€μ μ±
μμ ν λ¬Έμ₯μΌλ‘ λ§λ€μ΄λ³΄μ .μ΄ λ 'κ·Έλ¦¬κ³ 'λΌλ λ¨μ΄κ° ν¬ν¨λλ€λ©΄ μ΄ ν΄λμ€λ νλ μ΄μμ μ±
μμ κ°μ§κ³ μμ κ°λ₯μ±μ΄ λλ€. λ§μ½ 'λλ' μ΄λΌλ λ¨μ΄λ₯Ό μ¬μ©νλ€λ©΄ ν΄λμ€λ μλ‘ μ°κ΄λμ§λ μμ λ μ΄μμ μ±
μμ κ°μ§κ³ μλ€λ λ»μ΄λ€.
λ³νλ₯Ό λ°μλ€μΌ μ μλ μ½λ μμ±νκΈ°
λͺκ°μ§ λ°©λ²μ΄ μλ€.
λ°μ΄ν°κ° μλλΌ νλμ κΈ°λ°ν μ½λλ₯Ό μμ±νμ. λ°μ΄ν°μ μ§μ μ κ·Όνμ§λ§κ³ νμν getter/setterλ₯Ό μ΄μ©ν΄μ μ κ·Όνμ
λͺ¨λ κ³³μ λ¨μΌ μ±
μμμΉμ κ°μ νμ
A κ°μ²΄μμ μ±
μμ λΆλ¦¬νλ©΄μ λΆλ¦¬λ μ±
μμ κ°μ§ B κ°μ²΄λ₯Ό λ§λ€μ΄μΌνλμ§ νμ μ΄ λ€μ§ μμ μ μλ€. μ΄ κ²½μ°μ blockμ μ΄μ©ν΄μ μ νμ μ 보ν μ μλ€.
νμ΅ λ΄μ©μ λν κ°μΈμ μΈ μ΄ν
μ΄κ²μ κ² νκ² λ§μλ ν루 μ’
μΌ μ½λ©νκ³ λλ©΄ μ§μ΄ λΉ μ Έμ κΈ°λ‘μΌλ‘ λ¨κΈ°κΈ° μ΄λ ΅λ€. νΉνλ μ€λμ ν λͺ¨λμ PRμ Reviewνκ³ ν
μ€νΈνλλ° μκ°μ λλΆλΆ νμ©νλ€λ³΄λ κΈ°λ‘μ΄ μ λ§€νλ€.
ν루 μ’
μΌ μ½λ©νλ©° μμ΄λ μ§μκ³Ό κΉ¨λ¬μλ€μ μ’ λ μ κ·Ήμ μΌλ‘ κΈλ‘ λ¨κΈΈ μ μλλ‘ λ
Έλ ₯ν΄μΌμ§..
λ€μ νμ΅ κ³ν
Appearance view ꡬνμλ£