コード例 #1
0
def add_category(request):
    """
    Either show a form or create a new instance of one.
    """

    # Is request HTTP POST or GET?
    if request.method == "POST":
        form = CategoryForm(request.POST)
        if form.is_valid():
            category = form.save(commit=False)
            setattr(category, "url", Category._encode_url_name(category.name))
            category.save()

            # now call the index() view
            # user redirected to home page
            return index(request)
        else:
            # Uh oh, supplied form contains error - print out to console
            print form.errors
    else:
        # request not a POST, display the form to enter details
        form = CategoryForm()

    # Bad form (or form details), no form supplied...
    # Render the form with error messages (if any).
    return _process_request(request, {"form": form}, "rango/add_category.html")
コード例 #2
0
ファイル: views.py プロジェクト: tdhunt631/cs4990
def addCat(request):
    if request.method == 'POST':
        form = CategoryForm(request.POST)
        if form.is_valid():
            cd = form.cleaned_data
            newCat = Category()
            newCat.name = cd.get('name')
            newCat.description = cd.get('description')
            newCat.save()
            if request.is_ajax():
                categories = Category.objects.all()
                context = {
                    'categories': categories,
                }
                return render_to_response(
                    'inventory/getCats.html',
                    context,
                    context_instance=RequestContext(request))
            else:
                return HttpResponseRedirect('/inventory/')

    message = "Oops, it broke! You should enter in something valid."
    form = CategoryForm()
    categories = Category.objects.all()
    context = {
        'message': message,
        'form': form,
        'categories': categories,
    }
    return render_to_response('inventory/index.html',
                              context,
                              context_instance=RequestContext(request))
コード例 #3
0
def add_category(request):
    # Get the context from the request.
    context = RequestContext(request)
    cat_list = get_category_list()
    context_dict = {}
    context_dict['cat_list'] = cat_list

    # A HTTP POST?
    if request.method == 'POST':
        form = CategoryForm(request.POST)

        # Have we been provided with a valid form?
        if form.is_valid():
            # Save the new category to the database.
            form.save(commit=True)

            # Now call the index() view.
            # The user will be shown the homepage.
            return index(request)
        else:
            # The supplied form contained errors - just print them to the terminal.
            print form.errors
    else:
        # If the request was not a POST, display the form to enter details.
        form = CategoryForm()

    # Bad form (or form details), no form supplied...
    # Render the form with error messages (if any).
    context_dict['form'] = form
    return render_to_response('rango/add_category.html', context_dict, context)
コード例 #4
0
def QuestCategoryAdd(request):
    context = RequestContext(request)

    add = 0
    category_form = CategoryForm()
    er = []

    if request.method == 'POST':
        category_form = CategoryForm(data=request.POST)
        if category_form.is_valid():
            cat = category_form.save(commit=False)
            cat._setAdd(request.user)
            cat._setLink(cat.name)
            cat.save()
            add = 1
        else:
            er.append(category_form.errors)

    dict = {
        'template': template(),
        'footer_dc': footer_dc(),
        'quest_form': category_form,
        'er': er,
        'add': add
    }

    return render_to_response((template() + '/questsions/addCategory.html'),
                              dict, context)
コード例 #5
0
def index(request):
    """
    This defines the index page. It holds form available at the page. 
    """

    # Writing action of form when categories are submitted
    if request.method == 'POST':
        form = CategoryForm(request.POST)

        if form.is_valid():

            # Fetching the three categories listed by user
            category1 = form.cleaned_data['field0']
            category2 = form.cleaned_data['field1']
            category3 = form.cleaned_data['field2']
            page = 1  #Setting initial search page to 1

            redirect_url = 'listings/' + category1 + '/' + category2 + '/' + category3 + '/' + str(
                page)

            return HttpResponseRedirect(redirect_url)

    # Action of form otherwise
    else:
        form = CategoryForm()

    return render(request, 'index.html', {'form': form})
コード例 #6
0
ファイル: views.py プロジェクト: mew93/movies-db
def addCategory(request):
    if request.method == "POST":
        form = CategoryForm(request.POST)
        if form.is_valid():
            new_category = Category.objects.create(**form.cleaned_data)
            return HttpResponseRedirect(reverse('tommymovies:history'))
    else:
        form = CategoryForm()

    return render(request, 'tommymovies/addCategory.html', {'form': form})
コード例 #7
0
ファイル: views.py プロジェクト: Kirito1899/libcms
def category_edit(request, id):

    category = get_object_or_404(Category, id=id)
    category_titles = CategoryTitle.objects.filter(category=category)

    category_titles_langs = {}
    for lang in settings.LANGUAGES:
        category_titles_langs[lang] = None


    for category_title in category_titles:
        category_titles_langs[category_title.lang] = category_title

    if request.method == 'POST':
        category_form = CategoryForm(request.POST,prefix='category_form', instance=category)

        category_title_forms = []
        for lang in settings.LANGUAGES:
            category_title_forms.append({
                'form':CategoryTitleForm(request.POST,prefix='category_title_' + lang[0]),
                'lang':lang[0]
            })

        if category_form.is_valid():

            category = category_form.save(commit=False)
            category.parent = parent
            category.save()

            valid = False
            for category_title_form in category_title_forms:
                valid = category_title_form['form'].is_valid()
                if not valid:
                    break
                #            print 'valid', valid
            if valid:
                for category_title_form in category_title_forms:
                    category_title = category_title_form['form'].save(commit=False)
                    category_title.lang = category_title_form['lang']
                    category_title.category = category
                    category_title.save()
                return redirect('ask_librarian:administration:categories_list')
    else:
        category_form = CategoryForm(prefix="category_form")
        category_title_forms = []
        for lang in settings.LANGUAGES:
            category_title_forms.append({
                'form':CategoryTitleForm(prefix='category_title_' + lang[0]),
                'lang':lang[0]
            })

    return render(request, 'ask_librarian/administration/create_category.html', {
        'category_form': category_form,
        'category_title_forms': category_title_forms,
        })
コード例 #8
0
ファイル: views.py プロジェクト: reaandrew/GAE-Examples
def create_category_submit(request):
    category = Category(user=request._user, name="DEFAULT")
    data = CategoryForm(data=request.POST, instance=category)

    if data.is_valid():
        entity = data.save(commit=False)
        entity.put()
        return HttpResponseRedirect("/")

    return render_to_response('home/create_category.html',
                              {'category_form': data})
コード例 #9
0
ファイル: views.py プロジェクト: mrdremack/Python02
def add_category(request):
	if request.method == 'POST':
		form = CategoryForm(request.POST)
		if form.is_valid():
			form.save(commit=True)
			return index(request)
		else:
			print form.errors
	else:
		form = CategoryForm()

	return render(request, 'add_category.html', {'form':form})
コード例 #10
0
def add_category(request):
    if request.method == "POST":
        form = CategoryForm(request.POST)
        if form.is_valid():
            form.save()
            return index(request)
        else:
            print form.errors

    else:
        form = CategoryForm()
    return render(request, 'rango/add_category.html', {'form': form})
コード例 #11
0
ファイル: views.py プロジェクト: iamads/miniature-pancake
def addcategory(request):
    if request.method == "POST":
        form = CategoryForm(request.POST)
        if form.is_valid():
            form.save(commit=True)
            return redirect("/expensemanager/")
        else:
            print form.errors

    else:
        form = CategoryForm()
    return render(request, "expensemanager/addcategory.html", {"form": form})
コード例 #12
0
def add_category(request):

    if request.is_ajax():
        name = request.POST['name'].strip()
        description = request.POST['description']
        shared = request.POST['shared']

        if shared == "false":
            shared = False
        else:
            shared = True

        category = Category(user=request.user,
                            name=name,
                            description=description,
                            shared=shared)

        # Saves it
        category.save()

        id = category.id

        category_url = Category.objects.get(id=id).slug

        return JsonResponse({
            "response": "Success",
            "category": category_url,
            "category_id": id
        })

    if request.method == "POST":
        category_data = request.POST
        category_data['name'] = category_data['name'].strip()
        if category_data['name'] == "":
            return render(request, "fhs/add_category.html", {"invalid": True})

        category_form = CategoryForm(data=category_data)
        if category_form.is_valid():
            try:
                category = category_form.save(commit=False)
                category.user = request.user
                category.save()

                return HttpResponseRedirect('/fhs/profile/' +
                                            request.user.username)
            except:
                return render(request, "fhs/add_category.html",
                              {"existent": True})
        else:
            return render(request, "fhs/add_category.html", {"existent": True})

    return render(request, "fhs/add_category.html", {})
コード例 #13
0
def add_category(request):
    form = CategoryForm()

    if request.method == 'POST':
        form = CategoryForm(request.POST)

        if form.is_valid():
            cat = form.save(commit=True)
            print(cat, cat.slug)
            return index(request)
        else:
            print(form.errors)

    return render(request, 'rango/add_category.html', {'form': form})
コード例 #14
0
def delete_category(request):
    form = CategoryForm(request.POST)
    if form.is_valid():
        categoryId = form.cleaned_data.get('category_id')
        categoryModel = CategoryModel.objects.all().filter(
            pk=categoryId).first()
        if categoryModel:
            articalCount = categoryModel.articalmodel_set.all().count()
            if articalCount > 0:
                return xtjson.json_params_error(message='无法删除,该分类下还有文章')
            else:
                categoryModel.delete()
                return xtjson.json_result()

    else:
        return form.get_error_response()
コード例 #15
0
ファイル: views.py プロジェクト: DevKhokhar/Tango_With_Django
def add_category(request):
    context = RequestContext(request)

    if request.method == 'POST':
        form = CategoryForm(request.POST)

        if form.is_valid():
            form.save(commit=True)
            return index(request)
        else:
            print form.errors
    else:
        form = CategoryForm()

    return render_to_response('rango/add_category.html', {'form': form},
                              context)
コード例 #16
0
ファイル: views.py プロジェクト: Kirito1899/libcms
def category_create(request, parent=None):

    if  parent:
        parent = get_object_or_404(Category, id=parent)

    if request.method == 'POST':
        category_form = CategoryForm(request.POST,prefix='category_form')

        category_title_forms = []
        for lang in settings.LANGUAGES:
            category_title_forms.append({
                'form':CategoryTitleForm(request.POST,prefix='category_title_' + lang[0]),
                'lang':lang[0]
            })

        if category_form.is_valid():

            category = category_form.save(commit=False)
            category.parent = parent
            category.save()

            valid = False
            for category_title_form in category_title_forms:
                valid = category_title_form['form'].is_valid()
                if not valid:
                    break
            if valid:
                for category_title_form in category_title_forms:
                    category_title = category_title_form['form'].save(commit=False)
                    category_title.lang = category_title_form['lang']
                    category_title.category = category
                    category_title.save()
                return redirect('ask_librarian:administration:categories_list')
    else:
        category_form = CategoryForm(prefix="category_form")
        category_title_forms = []
        for lang in settings.LANGUAGES:
            category_title_forms.append({
                'form':CategoryTitleForm(prefix='category_title_' + lang[0]),
                'lang':lang[0]
            })

    return render(request, 'ask_librarian/administration/create_category.html', {
        'category_form': category_form,
        'category_title_forms': category_title_forms,
    })
コード例 #17
0
def category_create(request):

    category = Category()

    if request.method == 'GET':
        form = CategoryForm(instance=category)
        return render(request, 'categories/category_create.html',
                      {'form': form})
    elif request.method == 'POST':
        form = CategoryForm(request.POST, instance=category)
        if form.is_valid():
            category = form.save(commit=False)
            category.author = request.user
            category.save()
            return redirect('categories:categories')
        else:
            return render(request, 'categories/category_create.html',
                          {'form': form})
コード例 #18
0
ファイル: views.py プロジェクト: ajing2/xtblog
def delete_category(request):
    form = CategoryForm(request.POST)
    if form.is_valid():
        categoryId = form.cleaned_data.get('category_id')
        categoryModel = CategoryModel.objects.filter(pk=categoryId).first()
        if categoryModel:
            # 首先拿到该分类下的文章数量
            articleCount = categoryModel.articlemodel_set.all().count()
            # 如果文章数量大于0,就不让删除
            if articleCount > 0:
                return xtjson.json_params_error(message=u'该分类下还存在文章,不能删除!')
            else:
                categoryModel.delete()
                return xtjson.json_result()
        else:
            return xtjson.json_params_error(message=u'该分类不存在')
    else:
        return form.get_error_response()
コード例 #19
0
def QuestCategoryEdit(request, name):

    context = RequestContext(request)

    edit = get_object_or_404(QuestCategory, link=name)
    ed = 0
    category_form = CategoryForm()
    er = []

    if request.method == 'POST':
        category_form = CategoryForm(data=request.POST)
        if category_form.is_valid():
            #edit = category_form.save(commit=False)

            edit.name = request.POST['name']
            edit.descriptions = request.POST['descriptions']
            edit.status = request.POST['status']

            edit._setAdd(request.user)
            edit._setLink(request.POST['name'])

            if 'active' in request.POST:
                edit._setActiveTrue()
            else:
                edit._setActiveFalse()

            edit.save()
            ed = 1
        else:
            er.append(category_form.errors)

    dict = {
        'template': template(),
        'footer_dc': footer_dc(),
        'quest_form': category_form,
        'er': er,
        'ed': ed,
        'edit': edit
    }

    return render_to_response((template() + '/questsions/editCategory.html'),
                              dict, context)
コード例 #20
0
def cms_remove_category(request):
    '''
    1.如果该分类不存在不能移除,
    2.如果分类下有文章则不允许移除,
    因此我们要获取该分类下的所有文章,如果文章数小于0则不允许删除
    '''
    form = CategoryForm(request.POST)
    if form.is_valid():
        category_id = form.cleaned_data.get('category_id')
        category_model = CategoryModel.objects.filter(pk=category_id).first()
        if category_model:
            article_count = category_model.articlemodel_set.all().count()
            if article_count > 0:
                return myjson.json_params_error(message=u'该分类下还有文章,不能删除!')
            else:
                category_model.delete()
                return myjson.json_result()
        else:
            return myjson.json_params_error(message=u'该分类不存在!')
    else:
        message = form.errors
        return myjson.json_params_error(message)
コード例 #21
0
ファイル: views.py プロジェクト: flycal6/Rango
def add_category(request):
    # HTTP POST?
    if request.method == 'POST':
        form = CategoryForm(request.POST)

        # Form valid?
        if form.is_valid():
            # Save new category to database
            form.save(commit=True)

            # call index(), show homepage
            return index(request)
        else:
            # form had errors, print to terminal
            print form.errors
    else:
        # if request wasn't a POST, display form to enter details
        form = CategoryForm()

    # bad form or details, no form supplies
    # render form with error messages (if any)
    return render(request, 'rango/add_category.html', {'form': form})
コード例 #22
0
ファイル: views.py プロジェクト: edsase/salonebizness
def add_category(request):
    """form to enable user add new categories"""
    #ensure that only registered users can add categories
    if request.user.is_authenticated():
        form = CategoryForm()

        if request.method=="POST":
            form = CategoryForm(request.POST)
            #check if form is valid
            if form.is_valid():
                #save the new category to the database
                cat = form.save(commit=True)
                #print cat on console to confirm that it has been save
                #print cat.slug
                #return to the success page, in this case the index page which shows top 5 categories
                return index(request)
            else:
                #form contains invalid data, so print errors
                print form.errors
        #render the form with error messages if any
        return render(request, 'news/add_category.html', {'form': form})
    #since user is not authenticated, redirect to login page
    else:
        return HttpResponseRedirect(reverse('news:login'))
コード例 #23
0
ファイル: views.py プロジェクト: Kirito1899/libcms
def category_edit(request, id,):
    category = get_object_or_404(Category, id=id)
    category_titles = CategoryTitle.objects.filter(category=category)

    category_titles_langs = {}
    for lang in settings.LANGUAGES:
        category_titles_langs[lang] = None


    for category_title in category_titles:
        category_titles_langs[category_title.lang] = category_title



    if request.method == 'POST':
        category_form = CategoryForm(request.POST, prefix='category_form', instance=category)
        category_title_forms = []
        for lang in settings.LANGUAGES:
            if lang in category_titles_langs:
                lang = lang[0]
                if lang in category_titles_langs:
                    category_title_forms.append({
                        'form':CategoryTitleForm(request.POST,prefix='category_title_' + lang, instance=category_titles_langs[lang]),
                        'lang':lang
                    })
                else:
                    category_title_forms.append({
                        'form':CategoryTitleForm(request.POST,prefix='category_title_' + lang),
                        'lang':lang
                    })

        valid = False
        for category_title_form in category_title_forms:
            valid = category_title_form['form'].is_valid()
            if not valid:
                break


        if not category_form.is_valid():
            valid = False

        if valid:
            category = category_form.save()
            for category_title_form in category_title_forms:
                category_title = category_title_form['form'].save(commit=False)
                category_title.category = category
                category_title.lang = category_title_form['lang']
                category_title.save()

            if not category.is_leaf_node():
                dcategorys = category.get_descendants()
                for dcategory in dcategorys:
                    dcategory.save()

            return redirect('ask_librarian:administration:categories_list')


    else:
        category_form = CategoryForm(prefix="category_form", instance=category)
        category_title_forms = []
        for lang in settings.LANGUAGES:
            lang = lang[0]
            if lang in category_titles_langs:
                category_title_forms.append({
                    'form':CategoryTitleForm(prefix='category_title_' + lang, instance=category_titles_langs[lang]),
                    'lang':lang
                })
            else:
                category_title_forms.append({
                    'form':CategoryTitleForm(prefix='category_title_' + lang),
                    'lang':lang
                })

    return render(request, 'ask_librarian/administration/edit_category.html', {
        'category_form': category_form,
        'category_title_forms': category_title_forms,
        'category': category
    })