API만 사용하여 데이터를 가져오려고 했지만, 권장 방식은 import기를 사용하는 것인 것 같습니다. 제 데이터는 실제로 ListServ RSS 피드에서 가져온 것을 JSON으로 변환한 것입니다.
이슈에서 검색해 본 결과, 제 데이터를 사용할 때 필요한 형식은 다음과 같은 것 같습니다:
"topics": [
{
"id": 1,
"title": "The title",
"pinned": false,
"posts": [
{
"id": 2,
"body": "The body",
"date": "The date",
"author": "username"
}
]
}
]
}
첫 번째 질문: 이것이 json_generic의 올바른 형식인가요?
두 번째 질문: 이 도구를 사용하는 방법에 대한 추가 정보가 있나요?
pfaffman
(Jay Pfaffman)
2
mbox 파일에 접근할 수 있다면 훨씬 쉬울 것입니다.
일반적인 가져오기 스크립트는 말 그대로 일반적일 뿐이며, 코드를 확인하여 어떤 데이터를 기대하는지 파악한 뒤 스크립트나 데이터를 그에 맞게 수정해야 합니다.
주요 부분은 여기 있습니다:
mbox 파일에 접근 권한이 없는 것 같습니다. 저는 그룹의 일부 이메일만 보유한 구독자입니다. 이미 이 방법을 시도해 보았습니다. 시스템은 다른 브랜치에 있으며, 저는 조직에 discourse를 소개하려는 목적으로 이를 시도하고 있습니다.
일부 필드를 제외하고, 제 json 구조가 올바른지 확인해 주실 수 있을까요?
pfaffman
(Jay Pfaffman)
4
처음에는 올바른 방향으로 나아가고 있는 것처럼 보입니다. 하지만 물론 필드 이름을 올바르게 설정해야 합니다. 그리고 작동하려면 사용자 가져오기를 수행해야 합니다.
API를 통해 사용자 가져오기는 이미 완료했습니다. 이번엔 운이 좋았던 것 같습니다. 콘텐츠가 유효성 검사를 통과하지 못하는데, 이 기능을 비활성화해서 제 JSON 파일을 로컬 Discourse로 업로드하는 방법도 없는 것 같습니다.
각 게시글에 대해 Discourse에서 userId를 가져와야 할 것 같은데, 제 이해가 맞나요? 아니면 다른 접근 방법이 있나요?
pfaffman
(Jay Pfaffman)
6
처음부터 시작해서 스크립트로 사용자를 생성해야 합니다. 사용자 조회를 수행하려면 사용자 사용자 정의 필드에 import id가 필요합니다.
사용자를 다시 만들어야 하므로, 이렇게 하면 될까요? 이 예시에서 사용자 1(John Doe)이 주제 1인 "The Title"을 생성하고, 이 주제에는 John Doe가 작성한 본문이 "Body"인 게시글 1개가 있는 구조입니다.
이것이 맞다면, json_generic 스크립트를 사용하여 이 과정을 시작하는 방법은 무엇인가요? 다음 단계가 조금 혼란스럽습니다.
"topics": [
{
"id": 1,
"user_id": "1",
"title": "The title",
"pinned": false,
"posts": [
{
"id": 2,
"user_id": "1",
"body": "The body",
"date": "The date",
"author": "username"
}
]
}
],
"users": [
{
"id": "1",
"name": "John Doe",
"email": "John_Doe@wahoo.com",
"password": "asfd9!t",
"username": "John Doe",
"active": true,
"approved": true
},
]
}