DB 구조 만드는 것이 아마 제일 힘들 것 같습니다.
이 기초가 튼튼해야 앞으로 문제가 없을 같은데..
그래서 이것저것 보다 보니 ciboard 3.0 Pro의 구조를 참조로 하면 될 것 같습니다.
@terrorboy 님이 예전에 추천해 주신 https://sir.kr/cm_free/1445871 erdcloud.com 에
ciboard 3.0 pro에 대한 것이 올라와 있네요.
https://www.erdcloud.com/d/wNtbZdTQkjqehzKgn
먼저 글(post) 위주로 보면 gnuboard와 다르게 모든 글이 이 Table에 다 올라갑니다.
이 글의 글쓴이 (member) 와 이 글이 게시판(board)에 대해서 연결되어 있겠죠..
또한 댓글 (comments)도
"post" hasone or belongs to "member"
"post" hasone or belongs to "board"
"post" hasmany "comments"
hasone 이냐 belongsto냐는 https://stackoverflow.com/questions/30058949/should-i-use-belongsto-or-hasone-in-laravel
그래서 여기서는 belongsto 이네요. board_id와 member_id가 post에 있기 때문에..
"member" hasmany "post"
"board" hasmany "post"
"comments" belongsto "post"
"comments" belongsto "board"
"comments" belongsto "member"
의 Relation을 가지고 있을 것 같습니다.
게시판(board) 은 게시판 그룹(group)으로 연결 되어 있죠..
"board" hasone "group"
"group" hasmany "board"
이런 연결로 하면 예전에 게시글 처럼 https://sir.kr/so_app/170
GET api/v1/group 전체 Group (즉 top 메뉴를 읽어오기)
GET api/v1/group/{group_id} 각 그룹에 속한 메뉴 읽어오기
GET api/v1/board/{board_id} 게시판 읽어오기 (list_skin)
GET api/v1/board/{board_id}/post/{post_id} 게시판 항목 읽어오기 (view_skin)
식으로 구현이 가능할 것 같습니다. 아니면 wordpress방식으로
api/v1/post?board={board_id}
그러나 magento의 api를 보면 https://devdocs.magento.com/guides/v2.3/rest/list.html
역시 대세는 전자가 될 것 같습니다.
post 와 comment의 관계는 polymorphic으로 연결된다고 합니다. (추후에 더 공부해야..)
그리고 comment와 comment는 reply기능이 되어야 되니 이것도 나중에
댓글 7개
그누보드와 다르게 Post와 Comment 각각 하나의 테이블로 전 게시판을 커버해야 되는 구조라서..
아무래도 그누보드보다는 늦을 것 같고.. 그누보드처럼 테이블을 여러개 만드는 방법도 고민해봐야 될것 같고..
게시글 목록
| 번호 | 제목 |
|---|---|
| 500 |
코드이그나이터
축하드립니다.
|
| 499 |
코드이그나이터
Codeigniter 3.1.2 Fire Starter
|
| 497 |
코드이그나이터
경축~!
1
|
| 495 |
코드이그나이터
코드이그나이터
1
|
| 493 |
코드이그나이터
한사이트에 여러도메인 사용하기
1
|
| 491 |
코드이그나이터
안녕하세요. 소모임 개설을 축하합니다~
1
|
| 485 | |
| 483 | |
| 482 | |
| 477 | |
| 472 | |
| 471 | |
| 469 |
라라벨
Laravel Orion
1
|
| 463 |
라라벨
라라벨 8
4
|
| 462 | |
| 461 |
라라벨
라라곤(Laragon) 한글
|
| 459 | |
| 458 | |
| 456 | |
| 447 | |
| 445 | |
| 444 |
라라벨
라라벨 7.0
|
| 443 |
라라벨
PHPUnit 한국어 pdf
|
| 441 | |
| 440 | |
| 438 | |
| 436 |
라라벨
라라벨 6.0
1
|
| 435 | |
| 434 | |
| 433 |
라라벨
라라벨 제로
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기