본문 바로가기

json pretty, beautiful print in web page JSON Pretty, Beautiful Print JSON을 웹 페이지에서 이쁘게 보여줘야 할 때가 있죠. highlight 라이브러리를 통해서 보여주는 것도 좋겠지만 보통은 아래와 같은 방법으로 많이 하는 것 같네요. document.getElementById('printTargetElem').innder.HTML = '' + JSON.stringify(sourceObj, undefined, 4) + ''; 아래 코드를 통해서 JSON을 indent가 들어간 텍스트로 변경할 수 있고요. pre 안에 넣어줌으로써 있는 그대로 출력하게 하는 것이죠 !! JSON.stringify(sourceObj, undefined, 4) JSON.stringify가 JSON이나 Obj를 문자열로 변경시켜주는 함수이고 .. 더보기
django admin site : PRINT - all columns(fields) of model django admin 페이지에서 model의 특정 컬럼을 시각화하는 방법에 대해서는 지난 포스팅에서 다룬 적이 있슴다 :) 요거구요 :)2016/04/20 - [Python/Django&Celery] - django admin site - list display 이번에는 모델이 가지고 있는 모든 컬럼을 시각화하는 방법에 대해서 정리해둡니다 ㅠ 1. 예를 들어서 test 라는 app에 Cup 이라는 모델이 있다고 가정할께요. admin.py 안에 아래와 같이 작성함으로써 모든 컬럼을 불러 올 수 있어요. from test.models import Cup class CupAdmin(admin.ModelAdmin): list_display = Cup._meta.get_all_field_names() admi.. 더보기
Librados Python - Object Input, Output 관련 포스팅 목록 Ceph, RADOS - pool list, create, delete - http://ngee.tistory.com/758 Librados Python - Pool List, Create, Delete - http://ngee.tistory.com/759 Librados Python - Object Input, Output - http://ngee.tistory.com/760 이번에는 특정 Pool에 Object를 Input, Output 하는 것에 대해서 테스트해봅니다. 일단 참고문헌은 다음과 같습니다. Librados (Python) - http://ceph.com/docs/master/rados/api/python/ 1. ioctx Librados (Python)에서는 Input.. 더보기
Ceph, RADOS - pool list, create, delete 관련 포스팅 목록 Ceph, RADOS - pool list, create, delete - http://ngee.tistory.com/758 Librados Python - Pool List, Create, Delete - http://ngee.tistory.com/759 Librados Python - Object Input, Output - http://ngee.tistory.com/760 Ceph에 대해서도 정리해두려고 카테고리 생성 :) 자주 쓸 것 같은 명령어들을 정리해두고 쉽게 찾아보려고 합니다아. 일단 Ceph는 0.94.2 버전을 설치했습니다. 몇 개의 포스팅에서는 RADOS 명령어를 잘 사용해보는 것이 목표입니다 :) 일단 참고 URL 부터 architecture - http://doc.. 더보기
pip installed package list pip installed package list - 1 command : pip freeze pip installed package list - 2 command : python Python 2.7.3 (default, Dec 18 2014, 19:10:20) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import pip >>> for package in pip.get_installed_distributions(): ... print package pip를 통해 설치된 패키지 리스트를 얻는 방법을 간단하게 위에서 2개 보여드렸습니다. 1번 방식은 pip freeze 라는 명령.. 더보기
파이썬 basic - list 기초 python에서 list는 []로 표현합니다. 1. 리스트 선언 비어있는 리스트는 다음과 같인 선언 할 수 있어요. fa = [] 초기화 시킬 수도 있습니다. fa = ["a1", "a2", "a3"] 리스트에는 꼭 동일한 타입의 값이 들어갈 필요는 없습니다. 다음과 같이 말이죠. fa = ["a1", 123, "a3"] 2. 리스트에 추가 이미 생성된 리스트에 다양한 방법으로 값을 추가할 수 있습니다. append, insert, extend 와 같은 list 내장 함수를 사용하시면 되는데요. 아마도 가장 많이 사용되는 것은 append 아닐까요? 저는 append를 거의 주로 사용하고 나머지는 잘 사용하지 않는 것 같습니다. 단순한 프로그래밍만 해서 그럴 수도 있겠네요 ㅠ 아무튼 append는 다음과.. 더보기
파이썬 basic - 폴더 리스트 (folder list) 파이썬 소스코드를 통해서 간단하게 폴더 리스트를 출력하고자 하신다면, 다음과 같이 하면 됩니다. import os for i in os.listdir("path"): print i os.listdir 이라는 것을 통해서, 간단하게 할 수 있다는 것이구요. 위와 같이 하시면 path안에 있는 파일 및 폴더의 이름이 출력되죠. 하지만 위와 같은 코드는 서브 폴더의 파일 이름을 보여주지는 않죠. https://docs.python.org/2/library/os.html 위 주소를 참고하시면, 모든 폴더를 돌면서, 파일 이름을 출력하는 예제가 존재합니다. os.walk(top, topdown=True, onerror=None, followlinks=False) os 패키지에 walk라는 함수에 들어가는 인자들인.. 더보기
R script arguments (args) print R Script에서 Arguments를 받기 위해서는 다음과 같은 방식으로 하시면 됩니다. args=(commandArgs(TRUE)) print(args[1])print(args[2]) args=(commandArgs(TRUE))는 args 변수에 사용자가 입력한 입력변수들을 담는 것이구요. print(args[1]), print(args[2])는 받은 변수를 출력해보는 라인입니다. args[0]에는 character(0) 이 들어있다고 나오는데요. 정확하게는 먼지 모르겠지만, 사용자가 입력한 변수는 1부터 시작인 것은 확인 할 수 있었습니다. Rscript 파일의 실행은 다음과 같이 하시면 되죠? Rscript filename.R 1 2 1과 2는 args 가 되는 것이구요. 더보기
PHP에서 아파치 에러로그에 출력하기 (apache error log) PHP를 자주 쓰지 않아서, 거의 잘 모르는 상황인데요. 에러 로그에 기록해서 디버깅하기 위해서, 찾아보았습니다. 아주 예전에 소스 코드에 작성해두었더라구요..;; error_reporting(E_ALL | E_STRICT); 요걸 꼭 써줘야 하더라구요. 아니면 php.ini 파일에서 수정하는 방법도 있는 것 같습니다. 아파치 웹 에러 로그에 출력은 error_log(변수); 해주면 log 파일에 출력되는 것을 확인 할 수 있습니다. 더보기
리눅스 - 아파치 웹 서버 로그 보기 (Apache Web Server Log) 우분투 기준으로 작성하겠습니다. 일단은 아피치 웹 서버를 apt로 설치하셨겠죠?? ex) apt-get install apache2 아파치 웹 서버의 로그를 보기 위해서는 결론적으로 다음 명령어를 입력하시면 됩니다. tail -f /var/log/apache2/error.log /var/log 라는 폴더가 여러 응용프로그램들의 로그가 기본적으로 저장되는 곳입니다. 아파치 웹 서버도 마찬가지구요. tail -f 라는 명령어는 다음과 같이 설명되어 있는데요. Print the last 10 lines of each FILE to standard output. (tail --help 중 일부) -f 라는 옵션을 주어서, 에러로그를 한 번 출력하고 끝인 것이 아니라, 계속 모니터링 해줄 수 있습니다. 아래 그림.. 더보기
iOS - 버튼 이벤트 처리하기, 스토리보드(storyboard) 이용 iOS 개발 완젼 기본적인 내용으로 하나 더 추가합니다. 버튼 이벤트 처리하는 것인데요. 이 포스팅의 목적은 스토리보드에서 버튼 만들고, 버튼이 터치 될 때 로그를 출력하도록 하는 것입니다. 이것만 이해하면 버튼을 눌렀을 때 함수를 호출한다던지, 다른 View로 이동한다던지, 등등을 할 수 있겠죠 ㅎㅎ 그림들은 누르면 커져요. 1. 프로젝트 생성하고, view에 버튼을 추가하기 - xCode를 실행하고 new Project 눌러서 하나의 프로젝트를 생성하도록 합니다. 아래 그림과 같이 말이죠. 간단한 내용을 테스트 하는 것이니깐 Single View Application으로 선택하시고, 적당한 내용 기입해서 프로젝트를 생성합니다. 2. 스토리보드에서 View에 Button 추가하고, 소스코드에 연결하기... 더보기
wsgi - error log write (에러로그에 출력하기) wsgi로 서버쪽 스크립트를 작성한 경우 cgi 처럼 sys.stderr.write("에러 내용") 하면 제대로 에러로그에 출력되지 않습니다. def application(environ, start_response): environ['wsgi.errors'].write("에러내용") 요런 식으로 하면 잘 출력됩니다. 더보기
웹 서버 로그에 프린트문 출력하기 - apache, error log, print cgi 폴더에 작성하지만, cgi와는 별 관계는 없어요. 그냥 cgi 폴더를 web으로 변경해야 하나, 고민중입니다. 아무튼 !! 이번에는 apache error log에 출력하는 방법에 대해서, 작성해보려구요. 일단 코드 부터 보시죠 !! 1 #!/usr/bin/python 2 # -*- coding:utf-8 -*- 3 4 import sys 5 6 print "Content-type: text/html\n\n" 7 8 sys.stderr.write("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!") 4번째 줄에서 sys 모듈을 import 해줬구요. 6번째는 cgi 사용을 위한 것이구요. 8번째 줄에서 sys 모듈을 이용해서 아파치 error log에 작성하는 부분입.. 더보기