示例#1
0
 def setUp(self):
     # Path
     self.legals_url = reverse('legals-legals')
     # Client
     self.c = Client()
     # Form transmitted
     self.form = FoodSearchForm()
示例#2
0
def legals(request):
    """
        views of the legals mentions
    """

    form_search = FoodSearchForm()

    return render(request, 'legals/legals.html', locals())
示例#3
0
 def setUp(self):
     # User
     self.user = CustomUser.objects.create_user(
         email='*****@*****.**',
         username='******',
         password='******')
     # Client
     self.c = Client()
     # Path
     self.favorites_url = reverse('favorites-favorites')
     # Form transmitted
     self.form = FoodSearchForm()
示例#4
0
def favorites(request):

    current_user = request.user
    products = Product.objects.favorites_products(current_user)
    context = dict(products=products,
                   current_user=current_user,
                   form_search=FoodSearchForm())
    if not products:
        messages.warning(request, 'vos favoris sont vides')
    else:
        messages.success(request, 'Voici vos aliments déja enregistrés.')
    return render(request, 'favorites/favorites.html', context)
示例#5
0
def account(request):
    """
        view of the user account
    """

    username = request.user.username
    email = request.user.email

    context = dict(username=username,
                   email=email,
                   form_search=FoodSearchForm())

    return render(request, 'account/account.html', context)
示例#6
0
def signup(request):

    form_search = FoodSearchForm()
    if request.user.is_authenticated:
        return redirect('account-account')

    if request.method == 'POST':
        reg_form = UserRegistrationForm(request.POST)
        if reg_form.is_valid():
            reg_form.save()
            username = reg_form.cleaned_data.get('username')
            messages.success(
                request,
                f'{username}, your account has been created! You are now able to log in'
            )
            return redirect('login')
    else:
        reg_form = UserRegistrationForm()
    return render(request, 'signup/signup.html', locals())
示例#7
0
 def setUpTestData(cls):
     # User
     cls.user = CustomUser.objects.create_user(
         email='*****@*****.**',
         username='******',
         password='******')
     # Path
     cls.search_url = reverse('search-search')
     cls.results_url = reverse('search-results')
     # Form transmitted
     cls.form = FoodSearchForm()
     cls.prod_1 = Product.objects.create(
         name='name_p1',
         category='cat1',
         image=
         'https://static.openfoodfacts.org/images/products/761/303/624/9928/front_fr.177.400.jpg',
         link=
         'https://fr.openfoodfacts.org/produit/7613036249928/eau-de-vittel',
         nutriscore='a',
         fat=1,  # g for 100g
         salt=2,  # g for 100g
         sugars=3,  # g for 100g
     )
示例#8
0
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.contrib.auth import views as auth_views
from django.urls import path, include

# Views
from users import views as users_views
from signup import views as signup_views
from autocomplete import views as autocomplete_views

# Forms
from users.forms import UserLoginForm
from search.forms import FoodSearchForm

search_form = FoodSearchForm()

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('search.urls')),
    path('favorites/', include('favorites.urls')),
    path('product/', include('product.urls')),
    path('account/', include('account.urls')),
    path('legals/', include('legals.urls')),
    path('auto/', include('autocomplete.urls')),
    path('signup/', signup_views.signup, name='signup'),
    path('login/',
         auth_views.LoginView.as_view(template_name='users/login.html',
                                      authentication_form=UserLoginForm,
                                      extra_context={
                                          'form_search': search_form,
示例#9
0
def product(request, prod_id=None):

    form_search = FoodSearchForm()
    product = get_object_or_404(Product, id=prod_id)

    return render(request, 'product/product.html', locals())
示例#10
0
 def test_food_search_form_valid(self):
     data = {
         'user_input':'test string'
     }
     form = FoodSearchForm(data=data)
     self.assertEqual(form.is_valid(), True)