मैं मॉडल 2.0 के साथ डेटाबेस में वस्तुओं को बनाए रखने के तरीकों और तरीकों के बारे में सर्वोत्तम प्रथाओं की तलाश में हूं। मैंने स्काला का उपयोग करके प्ले 2.0 के लिए प्ले और टाइपएफ़ नमूने का अध्ययन किया है।प्ले 2.0 मॉडल सर्वोत्तम प्रथाओं
क्या मुझे समझ में है:
- मॉडल/एक मामले वर्ग
- सभी सम्मिलित/अपडेट करने में परिभाषित किया गया है का चयन हटाना/इस मामले वर्ग के साथी वस्तु में परिभाषित कर रहे हैं
एक नए मालिक को परिभाषित करने के अगर मैं अपने कार वस्तु अद्यतन करने की जरूरत तो मुझे क्या करना होगा:
val updatedCar = myCar.copy(owner=newOwner)
Car.update(updatedCar)
// or
Car.updateOwner(myCar.id.get, newOwner)
मैं सोच रहा हूँ क्यों अद्यतन करने या हटाने के बयान मामले वर्ग अपने आप में नहीं हैं:
case class Car(id: Pk[Long] = NotAssigned, owner: String) {
def updateOwner(newOwner: String) {
DB.withConnection { implicit connection =>
SQL(
"""
update car
set owner = {newOwner}
where id = {id}
"""
).on(
'id -> id,
'newOwner -> newOwner
).executeUpdate()
}
copy(owner = newOwner)
}
}
ऐसा करने से क्या करने की अनुमति होगी:
val updatedCar = myCar.updateOwner(newOwner)
कौन सा है कि मैं क्या प्ले 1 के साथ करते थे। जावा और जेपीए का उपयोग एक्स। शायद कारण स्पष्ट है और स्कैला के मेरे छोटे ज्ञान के कारण।