Realtime Database에 data class 추가하기
data class 생성
Firebase RealtimeDatabase 에 입력되려면 data class 에 constructor 를 추가해야 한다.
data class ArticleModel (
val sellerId: String,
val title: String,
val createdAt:Long,
val price: String,
val imageUrl:String
){
// constructor 생성
constructor():this("", "",0,"","")
}
RealtimeDatabase에 data class 저장
db.push() 함수를 사용해 임의의 키를 생성 setValue() 함수를 통해 data class 객체를 입력
private val auth by lazy{
Firebase.auth
}
private val articleDB by lazy{
Firebase.database.reference.child(DB_ARTICLES)
}
...
private fun initSubmitButton() {
binding.submitButton.setOnClickListener {
val title = binding.titleEditText.text.toString()
val price = binding.priceEditText.text.toString()
Log.d("initSubmitButton", "$title $price")
val sellerId = auth.currentUser?.uid.orEmpty()
var model = ArticleModel(sellerId, title, System.currentTimeMillis(), "$price 원", "")
// Articles 밑에 임의의 아이탬을 만듬
articleDB.push()
.setValue(model) // 임의의 아이탬(key)에 모델이 할당됨
}
}