2016-10-17 3 views
1

내가 좋아하는에만 열을 변경 아주 간단한 코드가 : 나는 그것의 전망 카운트 변경하려면이 코드를 원하지 않는ecto에서 updated_at을 건드리지 않고 모델을 업데이트하는 방법은 무엇입니까?

content = Content 
    |> Repo.get(1) 

content 
|> Ecto.Changeset.change(%{ views_count: content.views_count + 1 }) 
|> Repo.update 

을,하지만 난 updated_at 필드를 터치하고 싶지 않아요. 어떻게해야합니까?

+1

당신은 당신이보기 카운트 변경하는 코드를 _want_ 의미? – Dogbert

답변

6

제가 질문을 이해하지만이 작동 확실하지 않다 :

Content 
|> where(id: 1) 
|> Repo.update_all(inc: [views_count: 1]) 
+2

이것은 OP 코드에서 경쟁 조건을 수정하는 데 유용합니다. – Dogbert

+0

멋진! btw, ecto 문서에서 'inc'에 대한 문서를 찾지 못했습니다 – asiniy

+0

@Dogbert 경쟁 조건이 어디인지와 제공된 솔루션이 어떻게 해결되는지 자세히 설명해 주시겠습니까? – AbM

관련 문제