2013-06-12 3 views
3

Django보기에서 datetime을 ISO 8601로 변환하여 Facebook 페이지 이벤트로 푸시합니다. 나는 datetime.strptime 시도했지만 following best advice 나는에 선택했다했습니다 : 나는 2013-06-18 02:50:00를 인쇄하지만 내가 도착하기 전에 그것을 더 이상 얻을하지 않는 경우 EVENTDATE 콘솔에서 다음과 같습니다Django dateutil ISO 8601 '읽기'속성 오류가 없습니다

eventdate = event.date 
    print eventdate 
    date_iso = dateutil.parser.parse(eventdate) 

:

Django Version: 1.4.1 
Exception Type: AttributeError 
Exception Value:  
'datetime.datetime' object has no attribute 'read' 
Exception Location: /Users/mirth/.virtualenvs/ssc/lib/python2.7/site-packages/dateutil/parser.py in get_token, line 72 
Python Executable: /Users/mirth/.virtualenvs/ssc/bin/python 
Python Version: 2.7.2 
Python Path:  
['/Users/mirth/code/django/ssc', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/site-packages/requests/packages', 
'/Users/mirth/code/django/ssc/main', 
'/Users/mirth/code/django/ssc/main/../', 
'/Users/mirth/code/django/ssc', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/site-packages/pip-1.0.2-py2.7.egg', 
'/Users/mirth/.virtualenvs/ssc/lib/python27.zip', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/plat-darwin', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/plat-mac', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/plat-mac/lib-scriptpackages', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/lib-tk', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/lib-old', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/lib-dynload', 
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', 
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', 
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', 
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', 
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/site-packages', 
'/Users/mirth/.virtualenvs/ssc/lib/python2.7/site-packages/PIL'] 

무엇 그럴 수 있니? 감사합니다

답변

5

나는 다음과 같은 오류 메시지를 재현 할 수 있습니다 : 이미 아마 datetime.datetime 개체입니다 eventdate 것처럼

In [58]: import datetime as DT 

In [59]: eventdate = DT.datetime(2013, 6, 18, 2, 50) 
In [60]: print(eventdate) 
2013-06-18 02:50:00 

In [61]: import dateutil.parser as parser 
In [62]: parser.parse(eventdate) 
AttributeError: 'datetime.datetime' object has no attribute 'read' 

그래서이 기준에 보인다. 그렇다면,

In [66]: eventdate.isoformat() 
Out[66]: '2013-06-18T02:50:00' 

date_iso = dateutil.parser.parse(eventdate) 

는 ISO8601 형식으로 string로 변환하기 위해 전화를 사용할 필요가 없습니다

0

실제로는 parse 문자열을 기대할 때 datetime 개체를 전달 중입니다.

관련 문제