2010-12-03 3 views
1

웹 도도자가 서비스 용 CLI를 개발 중입니다. 백엔드로 끝났으며 CLI 기능을 작성하기 시작했습니다. 시작하기 전에 가장 좋은 방법은 사용자 데이터를 저장하는 것이 었습니다. 필자는 사용자 지정 환경 설정을 저장하기 위해 ConfigParser를 사용하고 있습니다. 이들은 ~/.confrc에 저장됩니다.사용자 데이터를 구성 파일에 저장해야합니까?

사용자 데이터는 Json 형식입니다. 나는 내 프로젝트를 위해 파이썬을 사용하고있다. ConfigParser를 통해 proccessed됩니다

{"user_id": 1, "name": "Project_name", "color": "#ff8581", "collapsed": 0, "item_order": 1, "cache_count": 13, "indent": 1, "id": 455831} 

내가 구성 파일이 데이터를 저장하는 경우, : 나는의 형태로 이러한 받고 있어요? 이것은 처음에는 좋은 생각 일지 모르지만 프로젝트는 다른 프로젝트에서 사용되는 이름을 가질 수 있습니다. 따라서 RawConfigParser.set()을 통해 저장할 수 없습니다. 나는 이드를 통해 그들을 저장할 수 있습니다, 그들은 독특하지만 conf 파일 자체가 매우 혼란 스러울 것입니다.

간단한 todolist 사용자 데이터를 저장하는 가장 좋은 방법은 무엇입니까?

+3

'.confrc'는 설정 파일의 최악의 이름입니다. 사용자별로 하나의 설정 파일을 원하십니까? 프로젝트마다? 이 파일을 사용하려면 사용자가 디렉터리에 있어야합니까? –

+1

Confrc는 단지 예일뿐입니다. 실제 파일 이름이 아닙니다. 하나의 사용자와 하나의 파일이 있습니다. 한 사용자에게 속한 프로젝트가 여러 개 있습니다. 나는 두 개의 파일을 갖고 자한다. 하나는 앱 환경 설정에 사용되고 하나의 파일은 데이터를 저장하는 데 사용됩니다. 사용자는 아무 데나있을 수 있지만 파일은 집 디렉토리에 저장됩니다. –

답변

4

저장할 파일이 하나뿐이라면 ~/.${PROJECT}rc을 사용하는 것이 좋습니다. 그렇지 않으면 별도의 디렉토리 ~/.${PROJECT}을 사용하십시오.

XDG Base Directory Specification을 참조 할 수도 있습니다.

+0

이것은 좋은 제안입니다. 추가 안전 팁 1 개 : 설정 파일에 적절한 버전 번호 정보를 입력해야합니다. 이렇게하면 프로젝트가 진화하면서 구성 표현을 변경할 수있는 유연성을 갖게됩니다. – mjhm

+0

링크를 제공해 주셔서 감사 드리겠습니다. –

관련 문제