コード例 #1
0
ファイル: views.py プロジェクト: jhg009j/web_demo
    def post(self, request):
        form = CoursePubForms(request.POST)
        if form.is_valid():
            name = form.cleaned_data.get('name')
            category_id = form.cleaned_data.get('category')
            abstract = form.cleaned_data.get('abstract')
            teacher_info = form.cleaned_data.get('teacher')
            picture = form.cleaned_data.get('picture')
            try:
                category = CourseCategory.objects.get(pk=category_id)
            except CourseCategory.DoesNotExist:
                return restful.parameter_error('该分类不存在!')

            try:
                teacher_id = int(teacher_info)
                teacher_list = Teacher.objects.filter(pk=teacher_id)
            except ValueError:
                teacher_name = teacher_info
                teacher_list = Teacher.objects.filter(
                    name__icontains=teacher_name)

            if teacher_list:
                teacher = teacher_list[0]
                Course.objects.create(name=name,
                                      category=category,
                                      abstract=abstract,
                                      picture=picture,
                                      teacher=teacher)
                # print(teacher)
                # print('Course create ok')
                return restful.ok()
            else:
                return restful.parameter_error('该讲师未加入!')
        else:
            return restful.parameter_error(form.get_error())
コード例 #2
0
ファイル: views.py プロジェクト: jhg009j/web_demo
 def post(self, request):
     form = DeleteCourse(request.POST)
     if form.is_valid():
         pk = form.cleaned_data.get('pk')
         try:
             course = Course.objects.get(pk=pk)
         except Course.DoesNotExist:
             return restful.parameter_error('该课程不存在!')
         course.display = False
         course.save()
         # print(course)
         # print('course delete ok')
         return restful.ok()
     else:
         return restful.parameter_error(form.get_error())
コード例 #3
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def edit_carousel(request):
    form = CarouselForm(request.POST)
    if form.is_valid():
        carousel_id = int(request.POST.get('carousel_id'))
        try:
            carousel_url = form.cleaned_data.get('carousel_url')
            link_to = form.cleaned_data.get('link_to')
            priority = form.cleaned_data.get('priority')
            Carousel.objects.filter(pk=carousel_id).update(
                carousel_url=carousel_url, link_to=link_to, priority=priority)
        except Carousel.DoesNotExist:
            return restful.parameter_error(message='轮播图id不存在!')
        return restful.ok(data={'priority': priority})
    else:
        return restful.parameter_error(form.get_error())
コード例 #4
0
ファイル: views.py プロジェクト: jhg009j/web_demo
 def post(self, request):
     form = DeleteTeacherForm(request.POST)
     if form.is_valid():
         teacher_id = form.cleaned_data.get('pk')
         try:
             teacher = Teacher.objects.get(pk=teacher_id)
         except Teacher.DoesNotExist:
             return restful.parameter_error('该讲师不存在!')
         teacher.display = False
         teacher.save()
         teacher.course_set.update(display=False)
         # print('teacher delete ok')
         return restful.ok()
     else:
         return restful.parameter_error(form.get_error())
コード例 #5
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def edit_course_category(request):
    form = EditCourseCategoryForm(request.POST)
    if form.is_valid():
        pk = form.cleaned_data.get('pk')
        course_category = form.cleaned_data.get('course_category')
        new_category_name = form.cleaned_data.get('new_category_name')
        if course_category == new_category_name:
            return restful.parameter_error('分类名已存在!')
        try:
            CourseCategory.objects.filter(pk=pk).update(name=new_category_name)
            # print('update ok')
            return restful.ok()
        except:
            return restful.parameter_error('该分类不存在')
    else:
        return restful.parameter_error(message=form.get_error())
コード例 #6
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def edit_category(request):
    form = EditCategoryForm(request.POST)
    if form.is_valid():
        pk = form.cleaned_data.get('pk')
        cate_name = form.cleaned_data.get('cate_name')
        new_name = form.cleaned_data.get('new_name')
        if cate_name == new_name:
            return restful.parameter_error('分类名已存在!')
        try:
            AddNewsCategory.objects.filter(pk=pk).update(
                category_name=new_name)
            return restful.ok()
        except:
            return restful.parameter_error('该分类不存在')
    else:
        return restful.parameter_error(message=form.get_error())
コード例 #7
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def del_carousel(request):
    try:
        carousel_id = request.POST.get('carousel_id')
    except Carousel.DoesNotExist:
        return restful.parameter_error(message='该轮播图不存在!')
    Carousel.objects.get(pk=carousel_id).delete()
    return restful.ok()
コード例 #8
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def delete_category(request):
    form = DeleteCategory(request.POST)
    if form.is_valid():
        pk = form.cleaned_data.get('pk')
        category = AddNewsCategory.objects.filter(pk=pk).first()
        related_news = category.newspub_set.all()
        if category:
            category.display = False
            category.save()
            related_news.update(display=False)
            # print(category.display, related_news)
            return restful.ok()
        else:
            return restful.parameter_error(message='该分类不存在!')
    else:
        return restful.parameter_error(message=form.get_error())
コード例 #9
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def add_category(request):
    new_cate = request.POST.get('new_category')
    exist = AddNewsCategory.objects.filter(category_name=new_cate).exists()
    if exist:
        return restful.parameter_error('该分类已存在!')
    else:
        AddNewsCategory.objects.create(category_name=new_cate)
    return restful.ok('添加成功')
コード例 #10
0
ファイル: views.py プロジェクト: jhg009j/web_demo
 def post(self, request):
     news_id = request.POST.get('pk')
     try:
         news = NewsPub.objects.get(pk=news_id)
     except NewsPub.DoesNotExist:
         return restful.parameter_error('该新闻不存在')
     news.display = False
     news.save()
     return restful.ok()
コード例 #11
0
ファイル: views.py プロジェクト: jhg009j/web_demo
 def get(self, request):
     course_id = request.GET.get('id')
     try:
         course_id = int(course_id)
     except ValueError:
         return restful.parameter_error('请输入正确的课程id!')
     course = Course.objects.select_related('teacher',
                                            'category').filter(pk=course_id,
                                                               display=True)
     categories = CourseCategory.objects.all()
     context = {'course': course[0], 'categories': categories}
     return render(request, 'cms/courses_pub.html', context=context)
コード例 #12
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def add_comment(request):
    form = CommentForm(request.POST)
    if form.is_valid():
        content = form.cleaned_data.get('content')
        news_id = form.cleaned_data.get('news_id')
        commentator = request.user
        news = NewsPub.objects.get(pk=news_id)
        comment = NewsComment.objects.create(content=content, news=news, commentator=commentator)
        comment_serialize = NewsCommentSerializer(comment)
        return restful.ok(data=comment_serialize.data)
    else:
        return restful.parameter_error(form.get_error())
コード例 #13
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def delete_course_category(request):
    form = DeleteCourseCategory(request.POST)
    if form.is_valid():
        pk = form.cleaned_data.get('pk')
        try:
            category = CourseCategory.objects.get(pk=pk)
        except CourseCategory.DoesNotExist:
            return restful.parameter_error('该分类不存在!')
        category.display = False
        category.save()
        category.course_set.update(display=False)
        # print('delete ok')
        return restful.ok()
コード例 #14
0
ファイル: views.py プロジェクト: jhg009j/web_demo
 def post(self, request):
     teacher_name = request.POST.get('name')
     teacher_title = request.POST.get('title')
     teacher_intro = request.POST.get('intro')
     teacher_avatar = request.POST.get('avatar')
     if teacher_name and teacher_title and teacher_intro and teacher_avatar:
         Teacher.objects.create(name=teacher_name,
                                title=teacher_title,
                                intro=teacher_intro,
                                avatar=teacher_avatar)
         # print('teacher add ok')
         return restful.ok()
     else:
         return restful.parameter_error('请完整填写讲师信息!')
コード例 #15
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def register_view(request):
    form = RegisterForm(request.POST)
    if form.is_valid():
        telephone = form.cleaned_data.get('telephone')
        password = form.cleaned_data.get('password1')
        username = form.cleaned_data.get('username')

        user = User.objects.create_user(telephone=telephone,
                                        password=password,
                                        username=username)
        login(request, user)
        return restful.ok()

    else:
        return restful.parameter_error(message=form.get_error())
コード例 #16
0
ファイル: views.py プロジェクト: jhg009j/web_demo
 def post(self, request):
     course_category = request.POST.get('course_category')
     exist = CourseCategory.objects.filter(name=course_category).exists()
     if exist:
         cate = CourseCategory.objects.get(name=course_category)
         if not cate.display:
             cate.display = True
             cate.save()
             return restful.ok()
         else:
             return restful.parameter_error('分类已存在!')
     else:
         CourseCategory.objects.create(name=course_category)
         # print('create ok')
         return restful.ok()
コード例 #17
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def login_view(request):
    form = LoginForms(request.POST)
    # print(form.get_error())
    if form.is_valid():
        cleaned_data = form.cleaned_data
        telephone = cleaned_data.get('telephone')
        password = cleaned_data.get('password')
        remember = cleaned_data.get('remember')
        user = authenticate(request, telephone=telephone, password=password)
        if user:
            if user.is_active:
                login(request, user)
                if remember:
                    request.session.set_expiry(300)
                else:
                    request.session.set_expiry(0)

                    return restful.ok(message='')
            else:
                return restful.unauthorized(message='用户被冻结')
        else:
            return restful.parameter_error(message='手机号或密码错误')
    else:
        return restful.parameter_error(message=form.get_error())
コード例 #18
0
ファイル: views.py プロジェクト: jhg009j/web_demo
    def get(self, request):
        newsid = request.GET.get('id')
        categories = AddNewsCategory.objects.filter(display=True)
        try:
            newsid = int(newsid)
        except TypeError:
            raise Http404

        news = NewsPub.objects.select_related('category',
                                              'author').filter(pk=newsid,
                                                               display=True)
        if news:
            context = {'news': news[0], 'categories': categories}
            return render(request, 'cms/news_pub.html', context=context)
        else:
            return restful.parameter_error('该文章不存在')
コード例 #19
0
ファイル: views.py プロジェクト: jhg009j/web_demo
 def post(self, request):
     form = TeacherEditForm(request.POST)
     if form.is_valid():
         teacher_name = form.cleaned_data.get('name')
         teacher_title = form.cleaned_data.get('title')
         teacher_intro = form.cleaned_data.get('intro')
         teacher_id = form.cleaned_data.get('pk')
         teacher_avatar = form.cleaned_data.get('avatar')
         Teacher.objects.filter(pk=teacher_id).update(name=teacher_name,
                                                      title=teacher_title,
                                                      intro=teacher_intro,
                                                      avatar=teacher_avatar)
         # print('teacher info edit ok')
         return restful.ok()
     else:
         return restful.parameter_error(form.get_error())
コード例 #20
0
ファイル: views.py プロジェクト: jhg009j/web_demo
def add_carousel(request):
    form = CarouselForm(request.POST)
    if form.is_valid():
        carousel_url = form.cleaned_data.get('carousel_url')
        link_to = form.cleaned_data.get('link_to')
        priority = form.cleaned_data.get('priority')
        # print(carousel_url, link_to, priority)
        new_carousel = Carousel.objects.create(carousel_url=carousel_url,
                                               link_to=link_to,
                                               priority=priority)

        return restful.ok(data={
            'carousel_id': new_carousel.pk,
            'priority': priority
        })
    else:
        return restful.parameter_error(form.get_error())
コード例 #21
0
ファイル: views.py プロジェクト: jhg009j/web_demo
    def post(self, request):
        form = NewsPubForms(request.POST)
        if form.is_valid():
            title = form.cleaned_data.get('title')
            desc = form.cleaned_data.get('desc')
            thumbnail = form.cleaned_data.get('thumbnail')
            content = form.cleaned_data.get('content')
            category_id = form.cleaned_data.get('category')
            category = AddNewsCategory.objects.get(pk=category_id)
            author = request.user

            NewsPub.objects.create(title=title,
                                   desc=desc,
                                   thumbnail=thumbnail,
                                   content=content,
                                   category=category,
                                   author=author)
            return restful.ok()
        else:
            return restful.parameter_error(form.get_error())