Misago
Python/Django 기반의 현대적인 오픈 소스 포럼 시스템으로, OAuth 로그인, 권한 관리, 비공개 토픽 등 풍부한 기능을 지원합니다.
스마트 다운로드
프로젝트 홈페이지 방문
아직 설치 프로그램이 없습니다 — 소스 저장소로 이동하세요
"아니요"라고 말할 줄 아는 현대적인 포럼 소프트웨어로, 기능이 완비되어 있고 확장이 쉽습니다.
주요 기능
- 50+ OAuth 로그인 지원(Facebook, Google 등)
- 무제한 계층 구조의 게시판 카테고리 및 권한 제어
- 비공개 주제, 투표, 첨부 파일, 편집 로그
- 검토 대기열, 블랙리스트, GDPR 준수
- 사용자 정의 테마 및 향후 플러그인 시스템
할 수 없는 것
- •현재 영구 Beta 상태이며 일부 기능이 불안정할 수 있습니다. Windows 사용자는 Docker 빌드 오류가 발생할 수 있습니다(README의 Note for Windows users 참조). 프론트엔드에는 테스트 스위트가 없으므로 소스 코드 수정 시 주의하시기 바랍니다.
사용 사례
- 커뮤니티 포럼 구축
- 기업 내부 토론 플랫폼
- 지식 Q&A 커뮤니티
상세 설명
Misago는 Python과 Django 기반의 현대적인 오픈 소스 포럼 시스템으로, 기존 포럼 소프트웨어에 대한 낡은 인식을 깨는 것을 목표로 합니다. 사용자 가입 및 프로필 관리, 50여 가지 OAuth 로그인 지원(Facebook, Google, GitHub 등), 무제한 계층의 게시판 카테고리, Markdown 및 BBCode 편집, 온라인 상태 추적, 완비된 모더레이션 및 권한 시스템, 비공개 토픽, 투표, 첨부 파일, 편집 기록, 모더레이션 대기열, 사용자 지정 테마, GDPR 준수 등의 기능을 제공합니다. 향후 GraphQL API, 플러그인 시스템, WYSIWYM 편집기를 추가할 계획입니다. Docker로 빠르게 배포할 수 있으며, 프론트엔드는 React를 사용합니다.
문제 해결 & FAQ (2)
문제 해결Misago가 Django FieldFile 포인터를 열린 상태로 남겨 Windows에서 파일 접근 오류를 발생시키는 문제를 어떻게 해결합니까?
PR #2224가 포함된 Misago 릴리스로 업그레이드하세요. 이 PR은 읽은 뒤 FieldFile 인스턴스가 닫히도록 컨텍스트 관리자를 추가합니다. 수정된 패턴은 다음과 같습니다:
with model.file_field.open():
file_content = model.file_field.read()
컨텍스트 관리자 없이 model.file_field.read()를 호출하지 마세요. 그렇게 하면 파일 포인터가 열린 채로 남아 Windows에서는 파일 잠금 오류를 일으키고 Linux에서는 불필요한 리소스 노이즈를 발생시킬 수 있습니다.
how_toplugin에서 mixin을 사용하여 Misago view를 확장하려면 어떻게 해야 하나요?
Misago의 class-extension API를 사용하세요. @extend(TargetViewClass)로 plugin mixin을 데코레이트한 다음, view 메서드를 오버라이드하고 super()를 호출하여 원래 동작을 유지하세요:
@extend(CategoryThreadListView)
class PluginCategoryThreadListViewMixin:
def get_context_data(self, **kwargs):
context_data = super().get_context_data(**kwargs)
context_data["top_components"].append(
{"template_name": "plugin/component.html"}
)
return context_data
이렇게 하면 플러그인이 여러 개의 개별 filter hooks를 구현하는 대신 전체 확장 가능한 view를 수정할 수 있습니다. 오버라이드된 메서드가 원래 view 메서드와 동일한 인수를 받도록 하세요.
태그
시작하기
소프트웨어 설치
다운로드한 설치 프로그램을 더블 클릭하고 안내에 따르세요
1단계: 저장소를 클론하고 ./dev init 실행 (Docker 필요)
2단계: docker compose up을 실행하여 개발 서버 시작
3단계: http://127.0.0.1:8000/ 에 접속하여 포럼 확인, 관리자 페이지 주소는 /admincp/, 기본 계정은 Admin/password
- 1단계: 저장소를 클론하고 ./dev init 실행 (Docker 필요)
- 2단계: docker compose up을 실행하여 개발 서버 시작
- 3단계: http://127.0.0.1:8000/ 에 접속하여 포럼 확인, 관리자 페이지 주소는 /admincp/, 기본 계정은 Admin/password
체크섬 없음
이 프로젝트는 GitHub Release 페이지에 SHA-256 체크섬을 게시하지 않았습니다
SHA256 체크섬
체크섬 없음
GitHub Releases에서 직접 다운로드하고 파일 무결성을 직접 확인하세요
이 플랫폼의 모든 SHA-256 체크섬은 프로젝트의 공식 GitHub Release 페이지에서 추출되었으며, 어떠한 변경도 없습니다. GitHub Releases 페이지에서 직접 검증할 수 있습니다.
오픈소스 투명성
GitHub 소스 보기제거 정보
프로젝트 디렉터리와 Docker 컨테이너를 삭제하면 완전히 제거됩니다. 데이터베이스를 유지하는 경우 수동으로 정리해야 합니다.
추가 의존성 없음
다운로드 후 바로 사용 가능. 추가 런타임이 필요하지 않습니다.
문제 발생? 아래 FAQ 확인
2 FAQs