Ejemplo n.º 1
0
def rate(request):
	try:
		menu_item_id = request.GET["item"]
	except KeyError:
		return HttpResponseBadRequest(error_json('item required but not prodided'))
	try:
		username = request.GET["username"]
	except KeyError:
		return HttpResponseBadRequest(error_json('username required but not prodided'))
	try:
		rating = request.GET["rating"]
	except KeyError:
		return HttpResponseBadRequest(error_json('rating required but not prodided'))
	try:
		item = MenuItem.objects.get(locu_id=menu_item_id)
		user = User.objects.get(username=username)
	except MenuItem.DoesNotExist:
		return HttpResponseBadRequest(error_json('Menu item "%s" does not exist'%menu_item_id))
	except User.DoesNotExist:
		return HttpResponseBadRequest(error_json('User "%s" does not exist'%username))
	if rating.lower() == "like":
		r = Rating(user=user, menu_item=item, value=Rating.LIKE)
		r.save()
	elif rating.lower() == "dislike":
		r = Rating(user=user, menu_item=item, value=Rating.DISLIKE)
		r.save()
	else:
		return HttpResponseBadRequest(error_json('Rating "%s" is not valid'%rating))

	from ml import ML
	ML.build()
	return HttpResponse("")
Ejemplo n.º 2
0
def run():
	from api.importer import import_items
	print("importing menu items")
	import_items("../turk/data/menu_item.json")
	print("importing ratings")
	from api.rating_importer import import_ratings
	import_ratings("../turk/data/training.csv")
	from ml import ML
	print("rebuilding model")
	ML.build()