최근에 만든 댓글 입력 폼은 작성하자마자 리다이렉션이 되어 화면에 댓글이 나타났다.

이를 즉시 노출하는 것에서 Admin을 통해 승인된 댓글만 보여지는 형태로 바꿔볼 것이다.


어떻게 댓글이 안보이다가 보이는지 생각해보면,

댓글의 허용 여부에 따라 화면에 노출되냐 마냐가 결정된다.


그러므로 Comment에 새로운 속성이 추가되어야 한다.

https://docs.djangoproject.com/en/2.1/ref/models/fields/


우리의 목적에 필요한 필드 속성은 참과 거짓의 값을 담는 BooleanField이다.

BooleanField 사용시 기본값을 정해주는데 최초 노출은 하지않으므로 False를 입력한다.

필드명은 목적에 부합하는 approved_comment로 정했다.



1
2
3
4
5
6
7
8
9
class Comment(models.Model):
    article = models.ForeignKey(
        Article,
        related_name="article_comments",
        on_delete=models.CASCADE
    )
    username = models.CharField(max_length=50)
    content = models.CharField(max_length=200)
    approved_comment = models.BooleanField(default=False)
cs



폼을 통해 comment에 대한 데이터를 받을 때에도 False 값을 받도록 고정시켰다.



1
2
3
4
5
6
7
8
9
    elif request.method == "POST":
        username = request.POST.get("username")
        content = request.POST.get("content")
        Comment.objects.create(
            article=article_detail,
            username=username,
            content=content,
            approved_comment=False
        )
cs



이제 템플릿에서 댓글 데이터를 가져올 때 True or False 여부를 따져서 노출시킬 필요가 있다.



1
2
3
4
5
6
7
8
       {% for comment in article_detail.article_comments.all %}
       {% if comment.approved_comment is True %}
       <h4 class="author">{{ comment.username }}</h4>
       <div class="text">
       {{ comment.content }}
       </div>
       {% endif %}
       {% endfor %}
cs


approve_comment의 값이 True인 경우에만 데이터가 노출되도록 if문을 작성했다.

기본적으로 댓글에 False 값을 가지므로 Admin을 통해 허용 여부가 체크되어야 비로소 화면에 노출된다.

블로그 이미지

쵸잇

,

"〜ている"는 기초 중의 기초 문법으로 처음에 많이 배운다.

그런데, 현재진행형으로 해석되는 "~하는 중이다"로만 알려주고 가르친다.


이걸 배우고 일드나 일본여행을 하면 "〜ている"의 쓰임이 내가 알고있는 경우와 달라 당황스러울 때가 있다.


〜ている

〜ていました



자주 쓰이는 예시를 갖고 왔다.


우리말로 "결혼했어요"를 어떻게 이해하는가? 


"결혼하셨구나"라고 바로 이해한다.


일본어로 "結婚しました"라고 하면, 과거에 결혼했었다고만 알지 현재 결혼이 유지되고 있는지 알 수 없다는 것이다.

영어의 과거형과 상당히 유사하다.


결혼한 상태임을 말할 때는 "結婚しています"라고 표현한다.

"결혼하는 중입니다"가 아니라 "결혼한 상태입니다"라고 받아들여야한다.


영어에서는 현재완료를 사용해서 "I have got married"라고 결혼생활을 하고있음을 나타낸다.

중국어는 과거형 "他结婚了"으로 결혼했음을 우리말처럼 표현가능하다.


"彼は家に来ている。" 해석은 "그는 집에 오는 중이다"

이것도 틀린 해석이다.

올바른 번역은 "그는 집에 온 상태다"


현재진행형으로 사용할 경우 "彼は家に来ている最中だ。"라고 써야한다. 추가적인 상황 설명이 필요하다.


하나 더 살펴보자.

"うちの娘が卒業するごろ、僕は野球選手を辞めているだろう。"

"우리 딸이 졸업할 무렵에, 나는 야구선수를 그만두고 있겠지."

지금까지 학습한대로 다시 보면,

"우리 딸이 졸업할 무렵에, 나는 야구선수를 그만 둔 상태겠지."



과거진행형을 살펴보자.


"学生時代に、僕は日記を書いていました。"

우리말로는 "학생때 나는 일기를 쓰고 있었습니다"라고 해석되는데, 일본어로는 "학생때 나는 일기를 썼습니다"라고 이해한다.

과거의 일정기간 동안 습관처럼 행위를 했을 때 사용하는 것 같다.


"私はいつも毎朝七時には学校に着いていました。"

"저는 항상 매일 아침 7시에 학교에 도착하고 있었습니다"

이것도 학습한대로,

"저는 항상 매일 아침 7시에 학교에 도착했습니다"(습관처럼 빠짐없이 행위가 이어짐)



정리하면, 

"〜ている"는 우리식으로 현재진행형으로 번역이 되지 않으면 "~한 상태다"라고 이해하고,

"〜ていました"은 "~했다"라고 보는 게 좋다.





'외국어 > 일본어' 카테고리의 다른 글

〜に決まっている 파헤치기  (0) 2018.11.30
수동형  (0) 2018.11.23
블로그 이미지

쵸잇

,

수동형

외국어/일본어 2018. 11. 23. 19:54

일본어 수동형은 처음 배울 때 신기하면서도 난해하다. 그래서 배우고도 어색해서 회화로 쓰기가 어려웠다.

우리말과 비슷한 수동형의 문장이라면 일본어로도 어색하지 않지만, 그외 어색하게 들리는 수동형 문장이 많았다.



"엄마가 나를 깨웠다"

母が僕を起こした。


일본어에서는 특이하게 수동형으로 더 많이 쓰인단다. 이렇게.

"나는 엄마에게 깨워짐을 당했다"

"僕は母に起こされた。"


http://feed.conects.com/1796


일본어 고수가 남긴 글에서 봐도 문법적으로 이해하는데는 도움이 크게 되는건 아니지만,

이 분의 의견은 일본인의 의식과 사고방식에 빗댄 언어라는게 보여진다. 간접적으로 표현하기 위해 쓴다.

수동형을 이해하더라도 결국 자주 익혀서 익숙해지는 방법 뿐인것 같다.


어떠한 상황에서 쓰면 좋을지 찾아본 결과, 


1) 의도치 않게 어떤 행위를 당하는 경우(피해의 뉘앙스가 크다)


僕は母に起こされた。나는 엄마에게 (의도치 않게) 깨워졌다.

先生に怒られた。 선생님에게 (의도치 않게) 혼났다.

妹に日記を読まれた。여동생에게 일기를 (의도치 않게) 읽혔다. 

家は観光客にゴミを捨てられた。우리집은 관광객에게 (의도치 않게) 쓰레기가 버려졌다.

友達に新しい家来られた。친구에게 (의도치 않게) 새 집을 방문 당했다. (안왔으면 했는데 온 꼴) 


2) する의 수동형인 される는 앞의 명사에 따라 "~되다" 혹은 "~받다"라는 해석이 주류다.


オリンピックが開催された。올림픽이 개최되었다.

教授に質問された。교수님에게 질문 받았다.

お祖母さんに指摘された。할머니에게 지적 받았다.



추가로 고민해보니 우리말은 행위를 일으키는 주어에 집중되고, 일본어는 당하는 행위가 포함된 동사에 집중되는 것 같다.

해석상 의도치 않게 행위를 당했다고 보기 힘든 경우도 있으니 주의하면서 이해해야겠다

블로그 이미지

쵸잇

,