diff --git a/apps/rss_feeds/management/commands/task_feeds.py b/apps/rss_feeds/management/commands/task_feeds.py index b94eab7c6..f2bfc1cfe 100644 --- a/apps/rss_feeds/management/commands/task_feeds.py +++ b/apps/rss_feeds/management/commands/task_feeds.py @@ -40,9 +40,9 @@ class Command(BaseCommand): if i == 12: print feed_queue - UpdateFeeds.apply_async(args=(feed_queue,)) + UpdateFeeds.apply_async(args=(feed_queue,), queue='update_feeds') feed_queue = [] i = 0 if feed_queue: print feed_queue - UpdateFeeds.apply_async(args=(feed_queue,)) \ No newline at end of file + UpdateFeeds.apply_async(args=(feed_queue,), queue='update_feeds') \ No newline at end of file diff --git a/apps/rss_feeds/tasks.py b/apps/rss_feeds/tasks.py index 8621a71c4..6da055fd4 100644 --- a/apps/rss_feeds/tasks.py +++ b/apps/rss_feeds/tasks.py @@ -14,5 +14,15 @@ class UpdateFeeds(Task): feed = Feed.objects.get(pk=feed_pk) feed.update() -class NewFeeds(UpdateFeeds): +class NewFeeds(Task): name = 'new-feeds' + max_retries = 0 + ignore_result = True + + def run(self, feed_pks, **kwargs): + if not isinstance(feed_pks, list): + feed_pks = [feed_pks] + + for feed_pk in feed_pks: + feed = Feed.objects.get(pk=feed_pk) + feed.update()