Найти - Пользователи
Полная версия: rq обратиться к классу
Начало » Python для новичков » rq обратиться к классу
1
ajib6ept
Как мне обратиться к методу change_num и вернуть изменное число?

main.py
#-- coding: utf-8 --
from rq import Queue
from redis import Redis
from time import sleep
from task import TestClass
q = Queue(connection=Redis())
j = q.enqueue(TestClass.run, 'http://ya.ru')
 
sleep(3)
 
print j.result

task.py
#-- coding: utf-8 --
import urllib2
class TestClass():
    def change_num(self, num):
        return num+1
    @classmethod
    def run(cls, url):
        return len(urllib2.urlopen(url).read())


ajib6ept
Разобрался, вот к такому решению пришел

import urllib2
class TestClass():
    def __init__(self, num=0):
        self.num = num
    def change_num(self):
        self.num = self.num + 1
    
    @classmethod
    def run(cls, url):
        t = cls(len(urllib2.urlopen(url).read()))
        t.change_num()
        return t.num
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB