2012-06-19 4 views
5

내 문제는 상당히 단순해야하며 필사적으로 해결해야하는 것보다 더 중요한 관심사입니다. Google은 내가 찾던 답변을 내게 줄 수 없기 때문에 귀하의 전문 지식이 나를 도울 수 있기를 바랍니다.장고와 셀러리 : 관리 작업 목록에 값이 표시되지 않습니다.

Django 1.4 
Celery 2.5.5 
Redis 2.4.10 (latest version on homebrew?) 

그리고 나는 follwing을 명령하여 모든 것을 실행하고 있습니다 : 내가 사용하고 함께

import djcelery 
djcelery.setup_loader() 

BROKER_URL = redis 
CELERY_RESULT_BACKEND = 'redis' 
CELERY_REDIS_HOST = "localhost" 
CELERY_REDIS_PORT = 6379 
CELERY_REDIS_DB = 0 

CELERY_SEND_TASK_ERROR_EMAILS = True 
CELERYBEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler' 
CELERY_TASK_RESULT_EXPIRES = 172800 # 48 hours. 

: 나는 다음과 같은 구성 셀러리에 설정 한 내 settings.py에서

redis-server /usr/local/etc/redis.conf 
foreman run python manage.py runserver 
foreman run "python manage.py celeryd -E -B --loglevel=INFO" 
foreman run python manage.py celerycam 

을 한 가지를 제외하고이 모든 구성이 작동하는 것으로 보입니다.

django-celery를 사용하면 utomatically 장고 관리 (깔끔한!) 샐러리 통합을 얻으려면 만료되지 않은 모든 작업의 ​​상태를 확인하고 새로운 작업을 예약 할 수 있습니다.

관리자의 작업 목록에 의미가 표시되지 않습니다. 모든 값은 None입니다. 값을 클릭하면 세부 정보를 볼 수 있지만 제대로 수집되고있는 것처럼 보입니다. 그것은 단지 세부 사항이지만 그것은 나를 많이 괴롭힌다.

목록에 값이 표시되지 않는 이유는 무엇이며이를 수정하려면 어떻게해야합니까? 사전에

감사

편집 : 당신은 같은 모든 값을 볼 수있는 스크린 샷 그래서 여기

, 일부 스크린 샷입니다 UUID 등이다 없음하지만 작업이 완료 또는하지 않은 어떠했는지를 참조 않습니다 . 두 번째 스크린 샷에서 세부 정보 페이지를 볼 수 있습니다 (작업을 클릭 한 후). 여기에 모든 정보가 있습니다.

The django-celery admin task list not displaying all values

그리고 두 번째 이미지 : 나뿐만 아니라 이것을 가지고

The detail page of a task displaying all values

+0

"관리자의 작업 목록에서 모든 값이 없음을 나타내는 값이 표시되지 않습니다.": 상태가있는 작업 (예 : STARTED, SUCCESS, FAILURE)이 보이나요? 그렇다면 셀러리 캄이 제대로 작동하고 있음을 의미합니다. 무슨 가치관이야? –

+0

포스트에 추가 한 이미지를 참조하십시오. –

답변

2

. 그것은 장고 셀러리의 버그 인 것 같습니다. django-celery의 버전을 수정해야합니다 (django-celery에서 this commit으로 수정되었습니다).

return """<span title="%s", style="font-size: %spt;\ 
       font-family: Menlo, Courier; ">%s</span>""" % (
    escape(val[:255]), pt, escape(shortval)).replace("|br/|", "<br/>") 

으로 : 당신은 (기능 fixedwidthdjcelery.admin_utils에서) 다음 변경할 경우

return ("""<span title="%s", style="font-size: %spt;\ 
        font-family: Menlo, Courier; ">%s</span>""" % (
     escape(val[:255]), pt, escape(shortval))).replace("|br/|", "<br/>") 

다음 값은 관리자에 나타나지 않습니다.

+0

불행히도 heroku가 이것을 허용하지 않기 때문에 옵션을 사용할 수 없으며 pip 대신에 clone을 사용하면이 간단한 작업도 수행되지 않습니다. 2.6 버전이 곧 안정 될 것입니다! –

+0

현재 버전에서 작동하도록 코드를 monkeypatch 할 수 있습니다. –

0

동일한 오류가 발생했습니다. admin_utils.py 업데이트에 대한 예제는 약간의 오류가 있습니다! 대체해야 할 내용은 다음과 같습니다.

admin_utils 맨 위에 FIXEDWIDTH_STYLE을 (를) 추가하십시오.평 :

FIXEDWIDTH_STYLE = '''\ 
<span title="%s", style="font-size: %spt; \ 
font-family: Menlo, Courier; ">%s</span> \ 
''' 

그리고 대체 : 당신은 위의 GitHub의 링크에서 더 명확하게 볼 수

styled = FIXEDWIDTH_STYLE % (escape(val[:255]), pt,escape(shortval)) 
return styled.replace("|br/|", "<br/>") 

:와

return """<span title="%s", style="font-size: %spt;\ 
       font-family: Menlo, Courier; ">%s</span>""" % (
    escape(val[:255]), pt, escape(shortval)).replace("|br/|", "<br/>") 

. 완벽하게 작동합니다! 건배!