eloquent
μλ‘ννΈ
λΌλΌλ²¨μ΄ μ 곡νλ ORMꡬνμ²΄λ‘ DBμ κ°μ²΄κ° 맡νκΈ°μ
쿼리
λͺ¨λΈ ν΄λμ€λ₯Ό μ΄μ©ν΄μ 쿼리λΉλμ κ°μ΄ λ©μλλ‘ μΏΌλ¦¬λ₯Ό μνν μ μλλ° μ΄λ Modelν΄λμ€λ₯Ό μμλ°κΈ° λλ¬Έμ λ©μλλ₯Ό μ΄μ©ν μ μλ€.
save()
μμμ save()λ₯Ό μ€ννλ©΄ μμΈκ° λ°μνλλ°, μλ‘ννΈλ λͺ¨λ ν
μ΄λΈμ created_at
,updated_at
μ΄ μλ€κ³ κ³Όμ νκ³ νμ¬μ νμμ€ν¬νκ°μ ν λΉνλλ° ν΄λΉ 컬λΌμ΄ μ‘΄μ¬νμ§ μμ λ°μνλ μλ¬μ΄λ€. ν΄λΉ 컬λΌμ μΆκ°ν΄μ£Όκ±°λ νμμ€ν¬ν μλμ
λ ₯κΈ°λ₯μ λλ λ°©λ²μΌλ‘ ν΄κ²°ν μ μλ€.
public $timestamps = false;
μ μΆκ°ν΄ μλμ
λ ₯κΈ°λ₯μ λ μ μλ€.
create()
save()λ©μλλ λͺ¨λΈμ νλ‘νΌν° κ°μ νλμ© ν λΉν΄μ£Όμ΄μΌ νλλ° μ¬λ¬κ°μ νλ‘νΌν°κ°μ νλ²μ ν λΉνλ κ²½μ°μλ create()λ₯Ό μ¬μ©νλ©΄ νΈνκ² μμ ν μ μλ€.
create()λ©μλλ₯Ό μ΄μ©ν΄ 맀κ°λ³μλ‘ associate array
λ₯Ό λκ²¨μ£Όμ΄ κ°μ ν λΉν΄ μ€ μ μλ€.
bcrypt()
λ 60λ°μ΄νΈμ§λ¦¬ λ¨λ°©ν₯ ν΄μλ₯Ό λ§λλ λμ°λ―Έ ν¨μλ‘ λ³΅νΈνκ° λΆκ°λ₯νκΈ°λλ¬Έμ λΉλ°λ²νΈ μ°ΎκΈ°κ° λΆκ°λ₯νλ€.
μ μ½λλ₯Ό μ€νμμΌλ³΄λ©΄ MassAssignmentException
μ΄ λ°μνλλ° μ΄λ μλ‘ννΈ μ체μμ ν΄μ»€μ λλ ν λΉ κ³΅κ²©μ 보νΈνκΈ° μν μμΈμ΄λ€. μ΄λ₯Ό μν΄μλ λκ°μ§ λ°©λ²μ μ 곡νλλ° νλλ $fillable
νλ‘νΌν°λ₯Ό μ΄μ©νλ νμ©λͺ©λ‘ λ°©μμ΄κ³ , νλλ $guarded
νλ‘νΌν°λ₯Ό μ΄μ©ν κΈμ§λͺ©λ‘ λ°©μμ΄λ€.
μ°κ΄κ΄κ³
1. μΌλλ€ κ΄κ³
λ§μ΄κ·Έλ μ΄μ
μμ λ€(N)
κ° λλ μͺ½μ foreign()
λ©μλλ₯Ό μ΄μ©ν΄μ ν
μ΄λΈλΌλ¦¬μ μΈλ ν€ κ΄κ³λ₯Ό μ°κ²° ν΄μ£Όκ³ λͺ¨λΈμμ μλμ κ°μ΄ μ°κ²°κ΄κ³λ₯Ό ννν΄μ£Όλ©΄ λλ€.
κ° λͺ¨λΈλ΄μμ μ°κ΄κ΄κ³μ€μ ν λͺ¨λΈμ΄λ¦μ λ©μλλ₯Ό λ§λ€μ΄ hasMany(), belongsTo()λ©μλμ κ°μ΄ μ κ·Ό ν μ μκ² μ μ ν΄μ€ μ μλλ° μ΄λ λ©μλ λͺ μΌλ‘ κ΄λ‘μ 1μ΄ λλ μͺ½ λͺ¨λΈμ μ κ·Όνλ λ©μλλ λ¨μ, Nμ΄ λλ λͺ¨λΈμ μ κ·Όνλ λ©μλλ 볡μλ₯Ό μ¬μ©νλ€. 1μ΄λλμͺ½μμ Nμ μ°κ²°ν λ hasMany()λ₯Ό, Nμ΄ λλμͺ½μμ 1μ μ°κ²°ν λ belongsTo()λ₯Ό μ΄μ©νλ€.
μΈλν€ μ΄λ¦μ λͺ¨λΈλͺ μ κ°μ§κ³ μ리ννΈκ° μ μΆνμ¬ μ°κ²°νμ§λ§ νΉλ³ν idλ‘ μ°κ²°μ μνλ€λ©΄ Postλͺ¨λΈμ user()κ³Ό κ°μ΄ 맀κ°λ³μλ‘ μΈλν€ μ΄λ¦μ μ§μ ν΄μ€ μ μλ€.
λ€λλ€ μ°κ²°
N:Nκ΄κ³λ₯Ό μ°κ²°νκΈ° μν΄μλ ν μ΄λΈ νκ°λ₯Ό λ μμ±ν΄μ£Όμ΄μΌ νλ€.
N:Nμ μμͺ½ λ€ belongsToMany()λ₯Ό μ΄μ©νμ¬ μ°κ²°μ ν΄μ£Όλ©΄ λλλ° μ²«λ²μ§Έμμ ν μ΄λΈμ νκ°λ μμ±νλ μ΄μ λ μ΄ ν μ΄λΈμ΄ N:Nκ΄κ³λ₯Ό μ°κ²°μμΌμ£Όλ νΌλ² ν μ΄λΈμ΄ λκΈ° λλ¬Έμ΄λ€.
μ‘°ν
all()
all()λ©μλλ₯Ό ν΅ν΄ ν μ΄λΈμ μ‘°νν μμμ§λ§ μ΄λ λͺ¨λ νμ΄ μ‘°νλκΈ° λλ¬Έμ 쿼리λΉλμ λΉμ·νκ² μ‘°κ±΄λ€μ μΆκ°ν μ μλ€.
μλ‘ννΈ λͺ¨λΈμ λͺ¨λ 쿼리λΉλμ΄κΈ° λλ¬Έμ 쿼리 λΉλμ λͺ¨λ λ©μλλ₯Ό μ΄μ©ν μ μλ€.
cursor()
cursorλ©μλλ λ¨νλμ 쿼리λ₯Ό μ€νμ ν΅ν΄ λλμ λ°μ΄ν°λ₯Ό μ²λ¦¬ ν μ μμ΄ λ©λͺ¨λ¦¬ μ¬μ©λμ ν¬κ² μ€μΌ μ μλ€. μ΄λ λ°νκ°μΌλ‘ LazyCollection
μ λ°ννκΈ° λλ¬Έμ Collection λ©μλλ€μ μ΄μ©ν μ μλ€.
μ½μ
쿼리λΉλμ insertλ³΄λ€ κ°νΈνκ² save()λ©μλλ‘ μ½μ μ μνν μ μλ€. μ΄λ νμμ€ν¬νλ μλμΌλ‘ μ€μ λμ΄ μλμΌλ‘ μ§μ ν νμκ° μλ€.
λν, μ΄λ―Έ μ‘΄μ¬νλ νμ΄λΌλ©΄ updateλ₯Ό μννλ€.
μμ± λ³κ²½ νμΈ
isDirty() | isClean()
νμ¬ λͺ¨λΈμ΄ dbμ flushκ° λμλμ§ κ° μ»¬λΌλ³λ‘ νμΈκΈ° κ°λ₯νλ€.
wasChanged()
νμ¬ μμ²μ£ΌκΈ°λ΄μ λͺ¨λΈμ μμ±μ΄ λ³κ²½λμλμ§ νμΈνλ λ©μλ
getOriginal()
flushλκΈ° μ μ λͺ¨λΈμ μμ λ μ΄μ κ°μ νμΈνλ λ©μλ
λλ ν λΉ
λͺ¨λΈμ κ° νλ‘νΌν°λ₯Ό κ°κ° μ±μ save()λ‘ μ μ₯νλ λ°©λ² μΈμ create()
λ©μλλ₯Ό μ΄μ©νμ¬ νλ²μ μ μ₯ ν μλ μλ€.
νμ§λ§, μλ‘ννΈλ κΈ°λ³Έμ μΌλ‘ λλ ν λΉμΌλ‘λΆν° 보νΈνκΈ° λλ¬Έμ μ¬μ©ν μ μμ΄ fillable
μμ±μ 컬λΌλ€μ μΆκ°ν΄μ£Όμ΄μΌ νλ€.
Last updated