user out_key

feature/fix_generate_pass
Andrey 8 years ago
parent b57a455b3e
commit f7ea328315
  1. 12
      access/serializers.py
  2. 1
      access/urls.py
  3. 19
      access/views.py
  4. 2
      courses/urls.py
  5. 2
      courses/views.py
  6. 7328
      csv/access/account.csv
  7. 20277
      csv/access/progress.csv
  8. 8672
      csv/access/users.csv
  9. 49
      csv/achievement/achievement.csv
  10. 66
      csv/achievement/diploma.csv
  11. 2230
      csv/achievement/user_achievement.csv
  12. 53
      csv/course/course.csv
  13. 78891
      csv/course/storage.csv
  14. 3158
      csv/course/vertex.csv
  15. 16176
      csv/finance/bill.csv
  16. 2
      csv/load_comments.py
  17. 581266
      csv/management/comment.csv

@ -111,3 +111,15 @@ class UserSearchSerializer(serializers.ModelSerializer):
@staticmethod @staticmethod
def get_pay(self): def get_pay(self):
return sum([i.get_full_price() for i in self.bill_user.all()]) return sum([i.get_full_price() for i in self.bill_user.all()])
class UserMiniSerializer(serializers.ModelSerializer):
photo = serializers.SerializerMethodField()
class Meta:
model = get_user_model()
fields = ('photo', 'first_name', 'last_name')
@staticmethod
def get_photo(self):
return self.account.photo.url

@ -5,6 +5,7 @@ urlpatterns = [
url(r'teachers/$', views.TeacherListView.as_view()), url(r'teachers/$', views.TeacherListView.as_view()),
url(r'detail/$', views.DetailUserView.as_view()), url(r'detail/$', views.DetailUserView.as_view()),
url(r'detail/([0-9]{1,99})/$', views.DetailUserView.as_view()), url(r'detail/([0-9]{1,99})/$', views.DetailUserView.as_view()),
url(r'info/(?P<out_key>[0-9A-Fa-f-]+)/$', views.MinUserView.as_view()),
url(r'guard/(?P<pk>[0-9]{1,99})/(?P<page>.+)/$', views.UserGuardView.as_view()), url(r'guard/(?P<pk>[0-9]{1,99})/(?P<page>.+)/$', views.UserGuardView.as_view()),
url(r'find/$', views.FindUserView.as_view()), url(r'find/$', views.FindUserView.as_view()),
url(r'registration/$', views.RegistrationView.as_view()), url(r'registration/$', views.RegistrationView.as_view()),

@ -16,7 +16,7 @@ from rest_framework.views import APIView
from access.models.other import Invite, ResetPassword from access.models.other import Invite, ResetPassword
from access.models.progress import ProgressLesson from access.models.progress import ProgressLesson
from access.models import Progress from access.models import Progress
from access.serializers import UserSelfSerializer, UserSearchSerializer, ProgressLessonSerializer from access.serializers import UserSelfSerializer, UserSearchSerializer, ProgressLessonSerializer, UserMiniSerializer
class TeacherListView(APIView): class TeacherListView(APIView):
@ -132,10 +132,10 @@ class DetailUserView(APIView):
return Response('anonymous', status=200) return Response('anonymous', status=200)
if request.user.is_authenticated() and request.user.is_superuser \ if request.user.is_authenticated() and request.user.is_superuser \
or request.user.is_staff or request.user.id == int(pk): or request.user.is_staff or request.user.out_key == pk:
try: try:
user = get_user_model().objects.get(id=pk) user = get_user_model().objects.get(out_key=pk)
except get_user_model().DoesNotExist: except get_user_model().DoesNotExist:
return Response("User doesn't exist", status=404) return Response("User doesn't exist", status=404)
@ -274,7 +274,7 @@ class UserGuardView(APIView):
@staticmethod @staticmethod
def get(request, pk, page): def get(request, pk, page):
try: try:
user = get_user_model().objects.get(id=pk) user = get_user_model().objects.get(out_key=pk)
except get_user_model().DoesNotExist: except get_user_model().DoesNotExist:
return Response("User doesn't exist", status=404) return Response("User doesn't exist", status=404)
@ -316,3 +316,14 @@ class CourseProgressDynamicView(APIView):
return Response("Bad request", status=400) return Response("Bad request", status=400)
return Response(status=403) return Response(status=403)
class MinUserView(APIView):
renderer_classes = (JSONRenderer,)
@staticmethod
def get(request, out_key):
try:
return Response(UserMiniSerializer(get_user_model().objects.get(out_key=out_key)).data, status=200)
except get_user_model().DoesNotExist:
return Response("User not found", status=404)

@ -3,7 +3,7 @@ from django.conf.urls import url
from courses import views as views from courses import views as views
urlpatterns = [ urlpatterns = [
url(r'vertex/(?P<token>.+)/$', views.VertexDetail.as_view()), url(r'vertex/(?P<token>.+)/$', views.LessonDetail.as_view()),
url(r'tree/(?P<slug>.+)/$', views.TreeView.as_view()), url(r'tree/(?P<slug>.+)/$', views.TreeView.as_view()),
url(r'^$', views.CourseListView.as_view()), url(r'^$', views.CourseListView.as_view()),
] ]

@ -32,7 +32,7 @@ class CourseListView(APIView):
return Response(res, self.status_code) return Response(res, self.status_code)
class VertexDetail(APIView): class LessonDetail(APIView):
renderer_classes = (JSONRenderer,) renderer_classes = (JSONRenderer,)
@staticmethod @staticmethod

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

@ -0,0 +1,49 @@
id,img,text
17,achives/14t_rpXjXAR.png,Java: Основы построения веб-приложений
16,achives/15t.png,"Java: Веб-приложения:формы, заголовки и сессии"
15,achives/16_JHghTAS.png,Java: Дипломная работа
18,achives/13t_8wJaFO6.png,Java: Многопоточность
19,achives/12t.png,Java: Работа с базами данных
20,achives/11t_PlIJyKE.png,Java: Работа с файлами и сетью
21,achives/10t.png,Java: Внешний вид GUI и рисование
22,achives/9t_XB04aQi.png,Java: Основы построения GUI
23,achives/8t.png,Java: Тестирование и отладка
24,achives/7t_IcXWV0J.png,Java: Наследование и полиморфизм
25,achives/6t_6GPa4Cm.png,Java: Объекты и классы
26,achives/5t_MwDFKjE.png,Java: Типы данных: Коллекции
27,achives/4t_Wicy963.png,Java: Типы данных: Строки и даты
28,achives/3t_LEiFMmW.png,Java: Типы данных: числа
29,achives/2t_4GxlPla.png,Java: Синтаксис языка
30,achives/1t_95r5sEe.png,Java: Первые шаги
31,achives/16t_ElpMZT4.png,iOS: Обзор публикации приложений
32,achives/15t_G2dHbG0.png,iOS: WatchKit
33,achives/14t_zjLTw3C.png,"iOS: iPad, Swift 2 и iOS 9"
34,achives/13t_r5AUBkb.png,iOS: Анимация в iOS
35,achives/12t_O9ziZtQ.png,iOS: CoreData и CoreGraphics
36,achives/11t_R6ZFGPo.png,iOS: Работа с Сетью
37,achives/10t_rmSFxlx.png,iOS: Структуры данных и парсинг
38,achives/9t_FNgfsfx.png,iOS: Функциональные возможности
39,achives/8t_6caS4Mz.png,iOS: Инструменты ООП
40,achives/7t_U1hXqEE.png,"iOS: Enums, Structs"
41,achives/6t_6Q4gH9C.png,iOS: Optionals и Кортежи и отображение данных
42,achives/5t_Vg8scWj.png,"iOS: Классы, UIViewController"
43,achives/4t_M29zQP7.png,iOS: Программирование на Swift и основы UIKit
44,achives/3t_EzvoNos.png,iOS: Ветвление и коллекции
45,achives/2t_yq8f6nn.png,iOS: Основы Swift как языка программирования
46,achives/1t_VRlv8Gf.png,iOS: Основы программирования под iOS
47,achives/16t_9WuvuNR.png,Excel: Введение в макросы и язык VBA (продолжение)
48,achives/15t_B3SKKLm.png,Excel: Введение в макросы и язык VBA
49,achives/14t_1w3a59I.png,Excel: Работа с внешними источниками данных
50,achives/13t_QyBcCES.png,Excel: Сложные диаграммы
51,achives/12t_W1ecROl.png,Excel: Прогнозирование
52,achives/11t_Fzu2ICH.png,Excel: Инструменты анализа и оптимизации 2
53,achives/10t_z5VaRjv.png,Excel: Инструменты анализа и оптимизации
54,achives/9t_nBtNR8G.png,Excel: Формулы массивов
55,achives/8t_rFqrijw.png,Excel: Сводные таблицы
56,achives/7t_yXjsXUR.png,Excel: Визуализация данных
57,achives/6t_JYzPjTH.png,Excel: Формулы и функции. Работа с ошибками
58,achives/5t_noq5RnK.png,Excel: Формулы и функции.Более сложные формулы
59,achives/4t_Xl2DpdL.png,Excel: Формулы и функции.Работать с формулами
60,achives/3t_afQm2YN.png,Excel: Формулы и функции.Введение
61,achives/2t_79u4GW7.png,Excel: Основной функционал (продолжение)
62,achives/1t_xLDdZ54.png,Excel: Основной функционал
unable to load file from base commit

@ -0,0 +1,66 @@
user,img
volnov_mv@mail.ru,diploms/378-005-104-3681735945.png
flintl@bk.ru,diploms/366-005-081-3414761253.png
slava-sh@yandex.ru,diploms/378-005-106-5622100597.png
rock_n_vladok@mail.ru,diploms/373-005-088-8460749285.png
mahneva-mariya@mail.ru,diploms/365-005-080-7809812978.png
krrera@mail.ru,diploms/378-005-116-0406189146.png
a.michurin1783@mail.ru,diploms/367-005-082-4390339652.png
dron84@gmail.com,diploms/378-005-100-0453317915.png
garuskin.dima@gmail.com,diploms/372-005-087-7268502359.png
artemshchurev@gmail.com,diploms/378-005-110-5734330734.png
vladislav-avdeev@mail.ru,diploms/378-005-101-0579235306.png
serge-meb@mail.ru,diploms/378-005-093-9287022829.png
walerock@mail.ru,diploms/371-005-086-2010728249.png
threed@rsgc.ru,diploms/370-005-085-1445403214.png
ebortnikov@mail.ru,diploms/363-005-078-8013223405.png
tsubasa@tut.by,diploms/378-005-105-1400814657.png
susenko_a@ukr.net,diploms/363-005-077-4635813020.png
vladimir_glight@mail.ru,diploms/378-005-107-7721009995.png
aselya.bekenova@gmail.com,diploms/378-005-097-9345817764.png
kovalev.home@mail.ru,diploms/363-005-079-4953079839.png
grapeperson@inbox.ru,diploms/sharp378-005-123-4175944962.png
irinki@mail.ru,diploms/378-005-108-3003245596.png
komplekt_17@mail.ru,diploms/378-005-098-9891625101.png
o.gricenko@yandex.ru,diploms/378-005-117-1653742224.png
softmay@inbox.ru,diploms/378-005-099-6127989680.png
orloff.eg@yandex.ru,diploms/375-005-090-0013188516.png
izumovn@gmail.com,diploms/378-005-112-1318768199.png
anton_semenchuk@rambler.ru,diploms/374-005-089-1818186998.png
misha41192@mail.ru,diploms/378-005-109-8808693661.png
nadin12233@mail.ru,diploms/377-005-092-2649819525.png
lukin68@mail.ru,diploms/378-005-119-1396775116.png
caplinos@mail.ru,diploms/sharp378-005-124-8590405231.png
artyomzolotykh@gmail.com,diploms/363-005-076-8109754653.png
joy76@mail.ru,diploms/378-005-118-7596974049.png
vitalikbog@gmail.com,diploms/378-005-113-6643879642.png
artyomzykov@gmail.com,diploms/369-005-084-6514008928.png
v.vahmintsev@gmail.com,diploms/378-005-120-1857123638.png
malkolm063@yandex.ru,diploms/378-005-102-3225259917.png
cathayraht@gmail.com,diploms/sharp378-005-127-5465822465.png
ol88@bk.ru,diploms/378-005-103-4917135722.png
tatyana.best@list.ru,diploms/378-005-114-5045779647.png
kaa-work@yandex.ru,diploms/sharp378-005-121-6828207500.png
lissy@mail.ru,diploms/sharp378-005-125-7455009303.png
host510@mail.ru,diploms/378-005-115-8424668311.png
viktorbeznosov@mail.ru,diploms/sharp378-005-122-2445336751.png
danikanisa@gmail.com,diploms/sharp378-005-126-9693925734.png
aivis@ukr.net,diploms/sharp378-005-128-0750907505.png
chiganu@gmail.com,diploms/sharp378-005-129-3202020273.png
my-post@mail.ru,diploms/sharp378-005-131-1850096338.png
mr.titarev@mail.ru,diploms/sharp378-005-130-3534666982.png
roman@proskurnin.ru,diploms/sharp378-005-132-0213523725.png
miklik@yandex.ru,diploms/sharp378-005-133-1393432393.png
vikpointer@yandex.ru,diploms/sharp378-005-134-0649133567.png
firenskiy@yandex.ru,diploms/sharp378-005-137-3289702004.png
uglukfearless@gmail.com,diploms/sharp378-005-135-0135161426.png
hazhaev@gmail.com,diploms/sharp378-005-136-2411124105.png
d6232@bigmir.net,diploms/sharp378-005-138-8182572282.png
alexplatinum@yandex.ru,diploms/sharp378-005-139-5436334541.png
oleguch@ya.ru,diploms/sharp378-005-141-3016802392.png
volkovv71@gmail.com,diploms/sharp378-005-140-1452821946.png
cyrius@yandex.ru,diploms/sharp378-005-142-9487486532.png
orlenko23@mail.ru,diploms/sharp378-005-143-3541435391.png
vilorovna@yandex.ru,diploms/sharp378-005-144-3873082140.png
bpkprog@yandex.ru,diploms/sharp378-005-145-0913411150.png
roman@kislovs.ru,diploms/sharp378-005-146-1693156186.png
unable to load file from base commit

File diff suppressed because it is too large Load Diff

@ -0,0 +1,53 @@
hidden,level,slug,direction,public,title,image,big_image,big_mobile_image,teachers
False,B,SMM-–menedzher,3,True,SMM –менеджер,course/670х270_LMS_SMM.png,course/1480х238_LMS_SMM.png,,['lubov.loginova@ingate.ru']
False,B,Draw&Go,4,True,Акварельная живопись,course/mal_1.png,course/bol_1.png,course/bol_6A56hsO.jpg,['kristinagalockina@gmail.com']
False,B,ux-analitik,2,True,ux аналитик,course/analyticsprm.jpg,course/analyticsprw.jpg,course/analyticsprm_2J0YORM.jpg,['aic.analytics@skill-box.ru']
False,B+A,Android-razrabotchik,1,True,Android-разработчик,course/android_TK1Lu3x.jpg,course/android1.jpg,,"['raynor73@gmail.com', 'gerasimenkosv@bk.ru']"
False,B,UI-animatsiya,2,True,UI анимация,course/motion.jpg,course/motionlong.jpg,course/motion_sqnScls.jpg,['aic.motion@skill-box.ru']
True,B,"diplomnyy-proekt-""professiya-internet-marketolog""",3,True,"Дипломный проект ""Профессия Интернет-маркетолог""",course/670х270_LMS_маркетолог___uTutc3u.png,course/LMS_hard_ingate_1EM8sL7.png,,['lubov.loginova@ingate.ru']
True,E,diplomnyy-proekt-«ntv-plyus»,2,True,Дипломный проект «НТВ ПЛЮС»,course/нтв_плюс_маленькая.jpg,course/нтв_плюс_большая.jpg,,['ntvplus@skill-box.ru']
False,B,Key-Visual,2,True,Key Visual,course/670х270_Ретушь.png,course/1480х238_Ретушь.png,,['pajasu@gmail.com']
False,A,Excel-prodvinutyy,1,True,Excel продвинутый,course/excel_ni9vwCu.jpg,course/excel1_CcJM6br.jpg,course/excel_EEMEX0r.jpg,['buyavets@gmail.com']
True,E,diplomnyy-proekt-«festival'-molodezhi»,2,True,Дипломный проект «Фестиваль молодежи»,course/Фестиваль_молодежи_маленькая.jpg,course/Untitled-1.jpg,,['fm@skill-box.ru']
True,B,programmist-1s-bitriks-(2018),1,True,Программист 1С-Битрикс (2018),course/670х270_Xr9I0hT.png,course/1480х238_Om0nUCO.png,,['hex2bomb@gmail.com']
True,E,diplomnyy-proekt-«gazprombank»,2,True,Дипломный проект «Газпромбанк»,course/gazprom2.jpg,course/gazprom1.jpg,course/gazprom2_ZShOr5R.jpg,['gpb@skillbox.ru']
True,E,diplomnyy-proekt-«pochta-bank»,2,True,Дипломный проект «ПОЧТА БАНК»,course/почта_банк_маленькая.jpg,course/почтабанк_большая.jpg,,['pochtabank@skill-box.ru']
True,E,diplomnyy-proekt-«smp-bank»,2,True,Дипломный проект «СМП БАНК»,course/спм_маленькая_IGl1R5y.jpg,course/спм_большая_BBAUsvw.jpg,,['cmpbank@skill-box.ru']
False,B,veb-dizayn-dlya-nachinayuschih,2,True,Веб-Дизайн для начинающих,course/design.jpg,course/design1.jpg,,['camb@ya.ru']
False,B,JavaScript,1,True,JavaScript,course/js.jpg,course/js2.jpg,course/js_bBp5dM2.jpg,"['gerasimenkosv@bk.ru', 'yegor.yakovishen@me.com']"
True,B,"diplomnyy-proekt-""upravlenie-proektami""",3,True,"Дипломный проект ""Управление проектами""",course/670х238_Sibirix.jpg,course/1480х238_Sibirix.jpg,,['sibirix@skill-box.ru']
True,E,diplomnyy-proekt-«Yota»,2,True,Дипломный проект «Yota»,course/yota2.jpg,course/yota1.jpg,course/yota2_D06GbKi.jpg,['yota@skillbox.ru']
False,B+A,veb-razrabotchik,1,True,Веб-разработчик,course/web.jpg,course/web1.jpg,,"['gerasimenkosv@bk.ru', 'html@bedev.ru', 't@skillbox.ru']"
True,B,diplomnyy-proekt-«promsvyaz'bank»,2,True,Дипломный проект «Промсвязьбанк»,course/670х270_Промсвязьбанк_1.png,course/1480х238_Промсвязьбанк_1.png,,['komanda.promsvyazbank@yandex.ru']
True,B,test,1,False,Таргетированная реклама,,,,['t@skillbox.ru']
False,A,kak-otkryt-veb-studiyu,3,True,Как открыть веб-студию,course/Studio.jpg,course/webs.jpg,,['inna.spirina@gmail.com']
True,B,Sound-design,5,True,Sound design,course/670х270_Саунд_topSg6J.png,course/1480х238_Саунд_JpMiW6C.png,,['basie.ru@gmail.com']
False,B,kak-otkryt'-salon-krasoty,3,True,Как открыть салон красоты,course/670х270.png,course/1480х238_pX5zoz0.png,,['dbeleshko@gmail.com']
False,B,videobloging,3,True,Видеоблогинг,course/vb1.jpg,course/vb2.jpg,course/vb1_6ZsdrSE.jpg,['yoola@skill-box.ru']
True,B+A,razrabotchik-1s-bitriks,1,False,Разработчик 1С-Битрикс,course/bitrix_waWRT5T.jpg,course/bitrix1.jpg,,['t@skillbox.ru']
True,E,diplomnyy-proekt-«Kaspi.kz»,2,True,Дипломный проект «Kaspi.kz»,course/kaspi2.jpg,course/kaspi1.jpg,course/kaspi2_QzZi0IX.jpg,['kaspi@skillbox.ru']
True,E,diplomnyy-proekt-«MOS.RU»,2,True,Дипломный проект «MOS.RU»,course/mosru2.jpg,course/mosru1.jpg,course/mosru2_hDuLl1H.jpg,['mosru@skillbox.ru']
False,A,veb-dizayn-PRO,2,True,Веб-Дизайн PRO,course/Pro.jpg,course/pro1.jpg,,['colloum.ux@gmail.com']
True,B,1--s-bitriks-(2017),1,False,1 -с битрикс (2017),,,,['t@skillbox.ru']
True,B,sinema-4D-dlya-veb-dizayna,2,True,Cinema 4D для веб-дизайна,course/Обложка_LMS_Cinema_4D.jpg,course/Обложка_LMS_большая_Cinema_4D_aXJ3Ocs.jpg,,['rovshen.eyubov@yahoo.com']
True,B,diplomnyy-proekt-«Mos.ru-2»,2,True,Дипломный проект «Mos.ru-2»,course/mosru2_иконка_дипломныи_проект.jpg,course/mosru1_экран_в_курсе_большое_изображение.jpg,course/mosru2_hDuLl1H_изображение_под_мобилку.jpg,['mosru@skillbox.ru']
False,A,professiya-internet-marketolog-ot-a-do-ya,3,True,Профессия интернет-маркетолог от А до Я,course/marketolog_Ykj1b1J.jpg,course/marketolog1_bOfeJXW.jpg,,['buyavets@gmail.com']
True,B,Python-razrabotchik-s-nulya-(2018),1,True,Python-разработчик с нуля (2018),course/670х238_Python_dQO3TkP.jpg,course/1480х238_Python.jpg,,['vadim.shandrinov@skillbox.ru']
True,B,diplomnyy-proekt-«Ticketland»,2,True,Дипломный проект «Ticketland»,course/670х270_Тикетлэнд_1.png,course/1480х238_Тикетлэнд_1.png,,['komanda.ticketland@yandex.ru']
False,B,Blockchain,3,True,Blockchain,course/670x270.png,course/1480x238.png,,['blockchain.skillbox@yandex.ru']
True,B,ux-design-special-AIC-,2,True,ux design special AIC,course/ux.jpg,course/aic1.jpg,,"['ux@aic.ru', 'aic@skillbox.ru', 't@skillbox.ru']"
False,B,sketching-dlya-dizaynera,2,True,Скетчинг для дизайнера,course/sketch1.jpg,course/sketch2.jpg,course/sketch1_fUHb6TG.jpg,['sketch@skill-box.ru']
False,E,ux-design,2,True,ux design,course/ux.jpg,course/aic1.jpg,,['aic@skillbox.ru']
True,B,Python,1,False,Python,,,,['t@skillbox.ru']
False,B,upravlenie-proektami,3,True,Управление проектами,course/иконки-тем-для-LMS.jpg,course/обложкА-для-страницы-курса-в-ЛМС.jpg,,['sibirix@skill-box.ru']
True,B,zadanie-k-kursu-«professiya-PR-menedzher»-dlya-komandy-«megafon-–-severo-zapad»,3,True,ЗАДАНИЕ К КУРСУ «ПРОФЕССИЯ PR-МЕНЕДЖЕР» ДЛЯ КОМАНДЫ «МЕГАФОН – СЕВЕРО-ЗАПАД»,,,,['kstrifonova@gmail.com']
False,A,professiya---internet-marketolog,3,True,Профессия — интернет-маркетолог,course/LMS_mini_ingate.png,course/LMS_hard_ingate.png,,['lubov.loginova@ingate.ru']
False,B,reklamnaya-grafika,2,True,Рекламная графика,course/670х270_Тикетлэнд_1_wE1a3an.png,course/1480х238_Тикетлэнд_1_ObFQyCr.png,,['korumart@gmail.com']
False,A,professiya-PR-menedzher,3,True,Профессия PR-менеджер,course/pr.jpg,course/pr1.jpg,,['nataliya.akimova47@gmail.com']
True,B,rasprodazha,3,True,Распродажа,,,,['t@skillbox.ru']
False,B,dizayn-mobil'nyh-prilozheniy,2,True,Дизайн мобильных приложений RMR,course/photoRB_BZ5JhPj.jpg,course/photo5467609895021946983.jpg,,['skillbox@redmadrobot.com']
True,B,diplomnyy-proekt-«vtb24»,2,True,Дипломный проект «ВТБ24»,,,,['komanda.vtb24@yandex.ru']
False,B+A,Java-razrabotchik,1,True,Java разработчик,course/java.jpg,course/java1.jpg,,"['it.is.the.g@list.ru', 'gerasimenkosv@bk.ru', 't@skillbox.ru']"
False,B+A,iOS-razrabotchik,1,True,iOS Разработчик,course/swift.jpg,course/ios1.jpg,,"['exeypanteleev@gmail.com', 't@skillbox.ru']"
False,B,Excel-bazovyy,1,True,Excel базовый,course/excel.jpg,course/excel1.jpg,,['buyavets@gmail.com']
False,B+A,Csharp-razrabotchik,1,True,C# разработчик,course/csharp.jpg,course/csharp1.jpg,,"['codemy.csharp@gmail.com', 't@skillbox.ru', 'johntorohov@mail.ru']"
unable to load file from base commit

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

@ -56,7 +56,7 @@ if __name__ == '__main__':
comment = Comment.objects.create( comment = Comment.objects.create(
text=row['text'] or row['bb_text'], text=row['text'] or row['bb_text'],
out_key=get_user_model().objects.get(email=row['owner__email']).out_key, user_key=get_user_model().objects.get(email=row['owner__email']).out_key,
) )
if row['status'] == 'Одобренно': if row['status'] == 'Одобренно':

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save