شما به این ویدیو دسترسی ندارید
شما به این ویدیو دسترسی ندارید
سلام وقت بخیر استاد من به یه مشکل خوردم و دو روزه درگیرشم
موقعی که ران سرور رو میزنم این ارور رو میده:
Reverse for 'download_obj_bucket' with arguments '('admin/css/autocomplete.css',)' not found. 1 pattern(s) tried: ['bucket/download_obj/(?P<key>[^/]+)/\\Z']
و روی این خط از کدم که تو فایل bucket.html هست ایراد میگیره:
<td><a href="{% url 'home:download_obj_bucket' obj.Key %}">download</a></td>
از طرفی هم همه چیزو چک کردم موندم مشکل کجاست ممنون میشم راهنمایی کنید
ارسال نظر
سلام
مشکل از urlها هستش. احتمالا url رو به درستی فراخوانی نمیکنید
سلام استاد من عکس ها رو میتونم بدون celery یا به صورت pickle توی celery آپلود کنم ولی وقتی روی حالت json هستش ارورjson serialize میده. فایل عکس میگه قابل تبدیل به json نیست چطور میشه این مشکل حلش کرد؟؟؟
ارسال نظر
سلام
خب از json استفاده نکن :|
ممنونم :)
خواهش میکنم، باز اگر سوالی داشتی بپرس :/
سلام و درود استاد، بخش آپلود رو تونستم انجام بدم و کاربر میتونه که آپلود کنه. ولی وقتی میخوام ویدیو آپلود کنم به این ارور میخورم : cannot pickle '_io.BufferedRandom' object
متغیر DATA_UPLOAD_MAX_MEMORY_SIZE رو هم به تغییر دادم ( تو Stack Over Flow نوشته بود )
ولی باز هم همین ارور رو دریافت میکنم.
خودم دستی از طریق ترمینال میتونم آپلود کنم ویدیو رو و هیچ مشکلی نداره.
ارسال نظر
سلام
آپلود فایل های بزرگ به شکل دیگهای انجام میشه که در لینک پایین میتونید ببینید:
https://panel.arvancloud.ir/storage/docs/python#%D8%A8%D8%A7%D8%B1%DA%AF%D8%B0%D8%A7%D8%B1%DB%8C-%D8%A2%D8%A8%D8%AC%DA%A9%D8%AA-%D8%AF%D8%A7%D8%AE%D9%84-%D8%B5%D9%86%D8%AF%D9%88%D9%82%DA%86%D9%87
استاد همین کارو کردم و میتونم فایل رو دستی آپلود کنم، مشکل از جنگو هست که بهم ارور میده.
وقتی از طریق request فایل رو میگیرم و میدم به تابع این ارور رو بهم میده.
سلام میشه یکم توضیحات بیشتری راجبه async کردن otpcode بدید دقیقا نفهمیدم اینو باید چجوری async کرد تو فایل task.py؟
ارسال نظر
سلام
همونجوری که عملیاتهای باکت رو async کردیم ارسال پیامک هم به همون شکل هست.
یه shared_task ایجاد کن و باهاش فانکشن ارسال پیامک رو صدا بزن
سلام استاد خسته نباشی
یه سوال
چرا موقعی که از (key) delay. استفاده میکنم دانلود نمیکنه
ولی وقتی برمیدارم اوکیه
ارسال نظر
سلام
خب لابد یه جایی رو اشتباه کردی
شرمنده تو دیلیت و دانلود سرور سلری یه ارور میده با این مضمون:
Received unregistered task of type 'home.tasks.delete_object_task'.
The message has been ignored and discarded.
راه حلی پیدا نمیکنم میتونید شما راهنمایی کنید
ارسال نظر
سلام
دکوراتور shared_task رو روی متدها گذاشتی؟
اره گذاشتم متن کامل ارور تو سلری سرور اینه
[2022-08-09 15:13:44,792: ERROR/MainProcess] Received unregistered task of type 'home.tasks.download_object_task'.
The message has been ignored and discarded.
Did you remember to import the module containing this task?
Or maybe you're using relative imports?
Please see
http://docs.celeryq.org/en/latest/internals/protocol.html
for more information.
The full contents of the message body was:
'[["9810104127900748_2.jpg"], {}, {"callbacks": null, "errbacks": null, "chain": null, "chord": null}]' (101b)
Thw full contents of the message headers:
{'lang': 'py', 'task': 'home.tasks.download_object_task', 'id': 'abbfc236-8f9b-458f-a3df-8b5755cd835b', 'shadow': None, 'eta': None, 'expires': None, 'group': None, 'group_index': None, 'retries': 0, 'timelimit': [None, None], 'root_id': 'abbfc236-8f9b-458f-a3df-8b5755cd835b', 'parent_id': None, 'argsrepr': "('9810104127900748_2.jpg',)", 'kwargsrepr': '{}', 'origin': 'gen70731@fedora', 'ignore_result': False}
The delivery info for this task is:
{'consumer_tag': 'None4', 'delivery_tag': 1, 'redelivered': False, 'exchange': '', 'routing_key': 'celery'}
Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/celery/worker/consumer/consumer.py", line 591, in on_task_received
strategy = strategies[type_]
KeyError: 'home.tasks.download_object_task'
سلام من مشکل رو فهمیدم اون key منظورش توی ماژول celery _conf قسمت os. environ. setdefault اولین فیلدش key هستش که من DJANGO_SETTINGS_MODULE من اون S رو فراموش کردم بزارم آخر settings که ارور میداد S گذاشتم حل شد
سلام.
به نظرتون بهتر نبود قسمت های celery در جنگو
ویدیو های 15-19 را به صورت یه دوره جداگانه مثل قبل ضبط می کردید،
چون طرف باید دوره های ردیس، rabbit mq را ببینه ، کلی تمرین که که بهش مسلط شده بعد بیاد دوره سلری ببینه و بهش مسلط شه و به جنگو هم مسلط بشه(حداقل متوسط روبه بالا)
درحالی که داره تازه جنگو را یاد میگیره و اگه بخواهد به همین ترتیب ویدیو ها را ببینه
باید وسط کار جنگو را ول کنه و اون موارد را آموزش ببینه ، درحالی که به نظر من باید اول جنگو و بعد drf یاد بگیره و حالا موارد مثل ردیس و سلری و این موارد جانبی
ارسال نظر
سلام
حق با شماست ولی در اونصورت پراکندگی دوره ها هم زیاد میشد. قبلا هم اتفاقا خیلیا بخاطر پراکندگی دوره ها اعتراض کرده بودن.
سلام خسته نباشید
سال نوی شما مبارک
سه تا سوال داشتم
1- آیا با کد میشه bucket ساخت ، مثلا API چیزی داشته باشه ؟ یا حتما باید دستی بسازیم ؟
2- چجوری میشه مطمئن شد که task حتما انجام شده و fail نشده و در صورتی که fail شده , اتوماتیک دوباره اون task انجام بشه ؟
3- توی فندوق میشه از celery استفاده کرد و اون ابزار supervisor رو فعال کرد ؟
تشکر
ارسال نظر
سلام
1. بله
2. میتونید از آپشن retry استفاده کنید. امروز براش یه مقاله مینویسم و لینکش رو همین پایین میزارم
3. بله
میتونید این مقاله رو بخونید:
https://www.mongard.ir/articles/200/retrying-failed-celery-tasks/
ارسال نظر