Beispiel #1
0
def add_new_item_view(request):
    if request.user.is_seller is False:
        messages.add_message(
            request, messages.INFO,
            "toastr.error('You must be a seller to post items', 'Error');")
        return HttpResponseRedirect('/index')

    if request.method == 'POST':
        item = Item()
        try:
            item.description = request.POST['desl']
        except:
            pass
        try:
            item.keywords = request.POST['key']
        except:
            pass
        item.amount = request.POST['amount']
        item.name = request.POST['name']
        item.category = Category.objects.get(pk=request.POST['cate'])
        item.description_short = request.POST['dess']
        item.provider = request.user
        item.listed_price = request.POST['price']

        try:
            item.save()
        except:
            messages.add_message(
                request, messages.INFO,
                "toastr.error('You provided wrong data.', 'Error');")

    return render(request, 'ecommerce/newitem.html')
Beispiel #2
0
def update_item(item_id: int,
                item_request: ItemRequest,
                db: Session = Depends(get_db)):
    item = Item()
    item.name = item_request.name
    item.amount = item_request.amount
    item.price = item_request.price

    db.add(item)
    db.commit()

    return {
        "item_name": item_request.name,
        "item_id": item_request,
        "price": item_request.price,
        "item_amount": item_request.amount
    }
Beispiel #3
0
def api_item(request, item_pk=None):
    created = False
    if item_pk:
        item = Item.objects.get(pk=item_pk)
        if not item.created_by == request.user:
            import pdb
            pdb.set_trace()
            return HttpResponse(status=403)
    else:
        item = Item()
        item.created_by = request.user
        created = True

    if request.POST.get('delete'):
        item.delete()
    else:
        expense = Expense.objects.get(pk=request.POST.get('expense'))
        if not expense.created_by == request.user:
            return HttpResponse(status=403)
        item.expense = expense

        item.description = request.POST.get('description')
        item.amount = request.POST.get('amount')
        item.save()

        user_pks = request.POST.getlist('users')
        item.users.clear()
        for pk in user_pks:
            user = User.objects.get(pk=pk)
            item.users.add(user)

    if request.is_ajax():
        return HttpResponse(json.dumps({
            'type': 'item',
            'item_pk': item.pk,
            'item_created': created,
            'item_form': render_to_response('item_form.html', {'expense':item.expense, 'item':item}, context_instance = RequestContext(request)).content,
            'empty_form': render_to_response('item_form.html', {'expense':item.expense}, context_instance = RequestContext(request)).content
        }))
    return HttpResponseRedirect("/%s" % item.expense_id)
from extensions import db
from app import app
from models import Item
from noise import random_gaussian
import random

with app.app_context():
    db.drop_all()
    db.create_all()

    with open("gifts.csv", "r") as file:
        lines = file.readlines()
    
    for line in lines:
        item = Item(name=line.strip())
        item.amount = random.randint(1, 50)
        item.cost_min = int(random.random() * 50_00)
        item.cost_range = int(random_gaussian(50, 50_00))
        item.cost_seed = int(random.randint(0, 1000_00))
        item.cost_offset = int(random.random() * 1000_00)
        db.session.add(item)
    db.session.commit()