하기의 값이 업데이트가 준비된 형태의 값입니다.
밑의 값으로 업데이트를 해보겠습니다.
{'rich_text': [{'annotations': {'bold': False,
'code': False,
'color': 'default',
'italic': False,
'strikethrough': False,
'underline': False},
'href': None,
'plain_text': '크러스트가 취향저격',
'text': {'content': '크러스트가 취향저격', 'link': None},
'type': 'text'}]}
https://developers.notion.com/reference/update-a-block
API 문서를 열어보니 blockid
는 Update 할 Block의 id인건 짐작하실 수 있었을 겁니다. 그런데 BODY PARAMS
에 적혀있는 {type} _object는 뭘 뜻하는 걸까요?
이 부분을 알기 위해서 업데이트 할 block_id
의 형태를 읽어올 필요가 있습니다.
contents = notion.blocks.retrieve(block_id=target_block_id)
pprint(contents)
{'archived': False,
'created_by': {'id': 'edfacc72-eb15-467b-9fdb-d5b656e1c77b', 'object': 'user'},
'created_time': '2022-04-02T11:59:00.000Z',
'has_children': False,
'id': '27b0ad2f-5698-4f7c-ab07-00f174042264',
'last_edited_by': {'id': 'edfacc72-eb15-467b-9fdb-d5b656e1c77b',
'object': 'user'},
'last_edited_time': '2022-04-02T12:00:00.000Z',
'object': 'block',
'paragraph': {'color': 'default',
'rich_text': [{'annotations': {'bold': False,
'code': False,
'color': 'default',
'italic': False,
'strikethrough': False,
'underline': False},
'href': None,
'plain_text': '페퍼로니가 취향저격',
'text': {'content': '페퍼로니가 취향저격', 'link': None},
'type': 'text'}]},
'parent': {'page_id': '1f217cc1-225f-4580-8e22-cd7eb8db3c5e',
'type': 'page_id'},
'type': 'paragraph'}
'rich_text'
의 상위 Key를 확인하시면 됩니다. 키 이름이 뭘로 되어있나요? 'paragraph'
로 되어있습니다.
이 'paragraph'
가 {type}
중 하나로 보시면 됩니다. type 은 형태가 여러가지가 있기 때문에 일일히 암기하는건 무리가 있습니다.
필요하실 때 마다 하기 block 문서를 꺼내서 type 종류가 뭐가 있는지 확인해보시는 것을 권해드립니다.
https://developers.notion.com/reference/block
그러면 {type}
이 'paragraph'
인걸 알았으니, 이걸 업데이트 하는 코드를 실행해보겠습니다.
block_id
에는 지난번에 저장한 target_block_id
를 넣어주시면 되시고,
{type}
에는 rich_text
를 넣어주면 되는데,
{type}
이 paragraph 이므로 paragraph=rich_text
로 넣어주시면 됩니다.
notion.blocks.update(block_id=target_block_id, paragraph=rich_text)
바뀐게 보이시나요? 보이셨다면 성공입니다.