Partage
  • Partager sur Facebook
  • Partager sur Twitter

Exercices du cours Django / Vos questions

    29 mai 2017 à 18:43:05

    Oui je pense. Est ce que tu as la même erreur qu'avant ?
    • Partager sur Facebook
    • Partager sur Twitter
      29 mai 2017 à 18:56:34

      Merci,

      en attendant une réponse, j'ai commencé quelques tutos pour me rafraichir les idées. Quand j'aurais fini, je refais la VM et je tente une nouvelle installation. Je reprendrai à la suite de cette réponse.

      • Partager sur Facebook
      • Partager sur Twitter
        30 mai 2017 à 9:25:29

        Bonjour je voulait savoir a quoi correspond cette ligne

        debut_ms = transformation['UpmaWarranties'][0]['Start']['Unix']

        merci

        • Partager sur Facebook
        • Partager sur Twitter
          28 juillet 2017 à 9:41:52


          Bonjour ,

          Je suis le cours Développez votre site web , je suis bloqué à la partie gestion d'un projet .

          J'ai bien cette notification à la console :

          $ python manage.py runserver
          Performing system checks...
          
          System check identified no issues (0 silenced).
          
          You have 13 unapplied migration(s).Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
          Run 'python manage.py migrate' to apply them.
          
          July 28, 2017 - 07:10:42
          Django version 1.11.3, using settings 'crepes_bretonnes.settings'
          Starting development server at http://127.0.0.1:8000/
          Quit the server with CONTROL-C.

          Mais mon navigateur ne se lance pas ,donc n'affiche rien.

          Je suis sur un ubuntu 14.04 et python 3.4

          Pourriez vous m'aider svp?!

          merci

          -
          Edité par SlylaarNambs 28 juillet 2017 à 9:55:39

          • Partager sur Facebook
          • Partager sur Twitter
          Les échecs et les erreurs sont un pont vers la réussite et non pas un obstacle
            28 juillet 2017 à 21:51:29

            Bonjour à vous tous, j'espère que vous allez bien ?

            Voila je suis coincé au début du cours de django au paragraphe routage d'url. J'ai vu que cela avait changé depuis la 1.10 ( j'ai essayer cette solution )  mais je ne trouve pas,... S'auriez vous m'aider ?

            Voila le verbose du serveur : 

            C:\Users\gamebox\Google Drive\Cours\django\crepes_bretonnes>python manage.py runserver
            Performing system checks...
            
            System check identified some issues:
            
            WARNINGS:
            ?: (urls.W002) Your URL pattern '^/blog' has a regex beginning with a '/'. Remove this slash as it is unnecessary. If this pattern is targeted in an include(), ensure the include() pattern has a trailing '/'.
            
            System check identified 1 issue (0 silenced).
            
            You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
            Run 'python manage.py migrate' to apply them.
            July 28, 2017 - 20:34:59
            Django version 1.11.3, using settings 'crepes_bretonnes.settings'
            Starting development server at http://127.0.0.1:8000/
            Quit the server with CTRL-BREAK.
            Not Found: /blog/accueil




            Merci d'avance 

            Autant pour moi je ne sais pas pourquoi cela fonctionne maintenant...

            :magicien:

            -
            Edité par scwall 28 juillet 2017 à 22:06:44

            • Partager sur Facebook
            • Partager sur Twitter
              7 août 2017 à 18:51:01

              Bonjour, je voudrais savoir si quelqu'un a réussi à compléter l'activité du mini réseau social d'entreprise et qui peut partager ses réponses ?

              Cela m'aidera à progresser, pour le moment j'ai beaucoup de mal avec ce tutoriel django. :/

              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                9 décembre 2017 à 15:30:35

                quand je essay de le démarrer j'ai ce problème qu'est ce que je dois faire

                "GET / HTTP/1.1" 200 1767
                Not Found: /favicon.ico
                [09/Dec/2017 13:16:27] "GET /favicon.ico HTTP/1.1" 404 1933

                • Partager sur Facebook
                • Partager sur Twitter
                  31 décembre 2017 à 15:44:34

                  J'ai eu le même souci en passant en version 2.0 de django

                  """ django 3.0 qui a du être adaptée"""
                  from django.contrib import admin
                  from django.urls import path, include, re_path
                  
                  urlpatterns = [
                      
                      # Examples:
                      # url(r'^$', 'crepes.views.home', name='home'),
                      #path('', include('blog.urls')),
                      path('admin/', admin.site.urls),
                      path('blog/', include('blog.urls')),
                  ]


                  """ django 2.0 qui a du être adaptée"""
                  from django.contrib import admin
                  from django.urls import path, include, re_path
                  
                  urlpatterns = [
                  # Examples:
                  # url(r'^$', 'crepes.views.home', name='home'),
                  #path('', include('blog.urls')),
                  path('admin/', admin.site.urls),
                  path('blog/', include('blog.urls')),
                  ]





                  scwall a écrit:

                  Bonjour à vous tous, j'espère que vous allez bien ?

                  Voila je suis coincé au début du cours de django au paragraphe routage d'url. J'ai vu que cela avait changé depuis la 1.10 ( j'ai essayer cette solution )  mais je ne trouve pas,... S'auriez vous m'aider ?

                  Voila le verbose du serveur : 

                  C:\Users\gamebox\Google Drive\Cours\django\crepes_bretonnes>python manage.py runserver
                  Performing system checks...
                  
                  System check identified some issues:
                  
                  WARNINGS:
                  ?: (urls.W002) Your URL pattern '^/blog' has a regex beginning with a '/'. Remove this slash as it is unnecessary. If this pattern is targeted in an include(), ensure the include() pattern has a trailing '/'.
                  
                  System check identified 1 issue (0 silenced).
                  
                  You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
                  Run 'python manage.py migrate' to apply them.
                  July 28, 2017 - 20:34:59
                  Django version 1.11.3, using settings 'crepes_bretonnes.settings'
                  Starting development server at http://127.0.0.1:8000/
                  Quit the server with CTRL-BREAK.
                  Not Found: /blog/accueil




                  Merci d'avance 

                  Autant pour moi je ne sais pas pourquoi cela fonctionne maintenant...

                  :magicien:

                  -
                  Edité par scwall 28 juillet 2017 à 22:06:44



                  -
                  Edité par zoltix 31 décembre 2017 à 15:46:06

                  • Partager sur Facebook
                  • Partager sur Twitter
                    12 janvier 2018 à 23:46:32

                    Bonjour,

                    Je suis a la partie 2 : Activité : Développer une activité de blog complète

                    J'ai téléchargé le fichier et dézippé.

                    Avant de coder j'aimerais voir que tout marche mais en faisant le makemigrations je recois ca comme erreur :

                    python3 manage.py makemigrations
                    Traceback (most recent call last):
                      File "manage.py", line 10, in <module>
                        execute_from_command_line(sys.argv)
                      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/core/management/__init__.py", line 371, in execute_from_command_line
                        utility.execute()
                      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/core/management/__init__.py", line 347, in execute
                        django.setup()
                      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/__init__.py", line 24, in setup
                        apps.populate(settings.INSTALLED_APPS)
                      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/apps/registry.py", line 112, in populate
                        app_config.import_models()
                      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/apps/config.py", line 198, in import_models
                        self.models_module = import_module(models_module_name)
                      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/importlib/__init__.py", line 126, in import_module
                        return _bootstrap._gcd_import(name[level:], package, level)
                      File "<frozen importlib._bootstrap>", line 994, in _gcd_import
                      File "<frozen importlib._bootstrap>", line 971, in _find_and_load
                      File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
                      File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
                      File "<frozen importlib._bootstrap_external>", line 678, in exec_module
                      File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
                      File "/Users/jason/Downloads/activite1/crepes/blog/models.py", line 3, in <module>
                        class Article(models.Model):
                      File "/Users/jason/Downloads/activite1/crepes/blog/models.py", line 12, in Article
                        categorie = models.ForeignKey('Categorie')
                    TypeError: __init__() missing 1 required positional argument: 'on_delete'


                    J'ai beaucoup galèré parce que je travaille avec Django 2.0
                    J' ai réussi en créant une nouvelle app en django 2.0

                    python3 manage.py startapp blog2

                    Puis en copiant les texte des fichiers dans ce nouveau projet un à un et en faisant quelque modifications.


                    Bon Courage a tous !!

                    -
                    Edité par jpettiau 13 janvier 2018 à 14:57:03

                    • Partager sur Facebook
                    • Partager sur Twitter
                      16 janvier 2018 à 7:15:22

                      J'ai eu le même problème, J'ai simplement rajouté "on_delete=models.CASCADE" dans le modèle.

                      Bien à vous, 

                      # -*-coding:Utf-8 -*
                      """ définition des modéles """
                      from django.db import models

                      class Article(models.Model):
                      """définition du modéle Article è"""
                      titre = models.CharField(max_length=100)
                      slug = models.SlugField()
                      auteur = models.CharField(max_length=42)
                      contenu = models.TextField(null=True)
                      date = models.DateTimeField(verbose_name="Date de parution",
                      auto_now_add=True, auto_now=False)
                      is_visible = models.BooleanField(verbose_name="Article publié ?",
                      default=False)
                      categorie = models.ForeignKey('Categorie', on_delete=models.CASCADE)

                      def __str__(self):
                      return self.titre

                      # En cas de besoin, vous êtes autorisé à rajouter des méthodes ou
                      # propriétés dans ce modèle.


                      class Categorie(models.Model):
                      """définition de la categorie"""
                      titre = models.CharField(max_length=100)

                      def __str__(self):
                      return self.titre


                      class Comment(models.Model):
                      """ Modèle pour les commentaires. A vous de l'écrire ! """
                      pseudo = models.CharField(max_length=100)
                      email = models.EmailField()
                      contenu = models.TextField(null=True)
                      date = models.DateTimeField(verbose_name="Date de parution",
                      auto_now_add=False, auto_now=True)
                      is_visible = models.BooleanField(verbose_name="Commentaire publié ?",
                      default=True)
                      article = models.ForeignKey('Article', on_delete=models.CASCADE)



                      jpettiau a écrit:

                      Bonjour,

                      Je suis a la partie 2 : Activité : Développer une activité de blog complète

                      J'ai téléchargé le fichier et dézippé.

                      Avant de coder j'aimerais voir que tout marche mais en faisant le makemigrations je recois ca comme erreur :

                      python3 manage.py makemigrations
                      Traceback (most recent call last):
                        File "manage.py", line 10, in <module>
                          execute_from_command_line(sys.argv)
                        File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/core/management/__init__.py", line 371, in execute_from_command_line
                          utility.execute()
                        File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/core/management/__init__.py", line 347, in execute
                          django.setup()
                        File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/__init__.py", line 24, in setup
                          apps.populate(settings.INSTALLED_APPS)
                        File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/apps/registry.py", line 112, in populate
                          app_config.import_models()
                        File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/apps/config.py", line 198, in import_models
                          self.models_module = import_module(models_module_name)
                        File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/importlib/__init__.py", line 126, in import_module
                          return _bootstrap._gcd_import(name[level:], package, level)
                        File "<frozen importlib._bootstrap>", line 994, in _gcd_import
                        File "<frozen importlib._bootstrap>", line 971, in _find_and_load
                        File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
                        File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
                        File "<frozen importlib._bootstrap_external>", line 678, in exec_module
                        File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
                        File "/Users/jason/Downloads/activite1/crepes/blog/models.py", line 3, in <module>
                          class Article(models.Model):
                        File "/Users/jason/Downloads/activite1/crepes/blog/models.py", line 12, in Article
                          categorie = models.ForeignKey('Categorie')
                      TypeError: __init__() missing 1 required positional argument: 'on_delete'


                      J'ai beaucoup galèré parce que je travaille avec Django 2.0
                      J' ai réussi en créant une nouvelle app en django 2.0

                      python3 manage.py startapp blog2

                      Puis en copiant les texte des fichiers dans ce nouveau projet un à un et en faisant quelque modifications.


                      Bon Courage a tous !!

                      -
                      Edité par jpettiau 13 janvier 2018 à 14:57:03



                      • Partager sur Facebook
                      • Partager sur Twitter
                        26 janvier 2018 à 17:57:41

                        Salut à tous, 

                        Dans l'activité Développer une activité de blog complète j'ai un petit souci.

                        En fait je construis mon formulaire à partie d'un ModelForm comme celui-ci :

                        from django import forms
                        from .models import Comment
                        
                        class CommentForm(forms.ModelForm):
                            class Meta:
                                model = Comment
                                fields = ('sujet', 'email', 'pseudo', 'message')


                        qui reprend les informations de mon modèle :


                        class Comment(models.Model):
                            """ Modèle pour les commentaires. A vous de l'écrire ! """
                            sujet = models.CharField(max_length=100,)
                            pseudo = models.CharField(max_length=42,)
                            email = models.EmailField(null=False)
                            message = models.TextField(null=True)
                            date_commentaire = models.DateTimeField(default=timezone.now, verbose_name="Date du commentaire")
                            commentaire_is_visible = models.BooleanField(verbose_name="commentaire publié ?",
                                                             default=False)


                        En fait, j'ai du mal à comprendre comment inclure le formulaire au sein de la même page que le détail de l'article. J'ai l'impression qu'il faut forcément recréer un template ainsi qu'une url pour le commentaire...

                        S'il fallait l'appeler avec un lien je n'aurais pas de souci mais pour l'inclure dans la même page que le détail de l'article, je ne vois pas comment faire...

                        Voici ma vue :

                        def commentaire(request):
                            form = CommentForm()
                            return render(request, 'blog/lire_article.html', {'form': form})


                        Et le template en question :

                        <form action="{% url 'commentaire' %}" method="post">
                            {% csrf_token %}
                            {{ form.as_p }}
                        
                        		<p style="text-align:center">
                        			<input class="pure-button pure-button-primary" type="submit" />
                        		</p>
                        	</form>

                        Forcémment, ça ne fonctionne pas. Je n'affiche rien appart le bouton submit... 

                        Quelqu'un peut m'aider ? Par avance merci




                        • Partager sur Facebook
                        • Partager sur Twitter
                          28 janvier 2018 à 9:47:52

                          Pierre-YvesMeusnier a écrit:

                          Salut à tous, 

                          Dans l'activité Développer une activité de blog complète j'ai un petit souci.

                          En fait je construis mon formulaire à partie d'un ModelForm comme celui-ci :

                          from django import forms
                          from .models import Comment
                          
                          class CommentForm(forms.ModelForm):
                              class Meta:
                                  model = Comment
                                  fields = ('sujet', 'email', 'pseudo', 'message')


                          qui reprend les informations de mon modèle :


                          class Comment(models.Model):
                              """ Modèle pour les commentaires. A vous de l'écrire ! """
                              sujet = models.CharField(max_length=100,)
                              pseudo = models.CharField(max_length=42,)
                              email = models.EmailField(null=False)
                              message = models.TextField(null=True)
                              date_commentaire = models.DateTimeField(default=timezone.now, verbose_name="Date du commentaire")
                              commentaire_is_visible = models.BooleanField(verbose_name="commentaire publié ?",
                                                               default=False)


                          En fait, j'ai du mal à comprendre comment inclure le formulaire au sein de la même page que le détail de l'article. J'ai l'impression qu'il faut forcément recréer un template ainsi qu'une url pour le commentaire...

                          S'il fallait l'appeler avec un lien je n'aurais pas de souci mais pour l'inclure dans la même page que le détail de l'article, je ne vois pas comment faire...

                          Voici ma vue :

                          def commentaire(request):
                              form = CommentForm()
                              return render(request, 'blog/lire_article.html', {'form': form})


                          Et le template en question :

                          <form action="{% url 'commentaire' %}" method="post">
                              {% csrf_token %}
                              {{ form.as_p }}
                          
                          		<p style="text-align:center">
                          			<input class="pure-button pure-button-primary" type="submit" />
                          		</p>
                          	</form>

                          Forcémment, ça ne fonctionne pas. Je n'affiche rien appart le bouton submit... 

                          Quelqu'un peut m'aider ? Par avance merci

                          Pourquoi est ce que tu rajoutes pas dans le template que tu utilises pout afficher les details de l'article une boucle for pour afficher les commentaires de l'articles que tu passes alors en argument de la fonction ?
                          • Partager sur Facebook
                          • Partager sur Twitter
                            28 janvier 2018 à 12:26:31

                            Bonjour,

                            Je suis actuellement au TP Mini_URL, mais je ne comprends pas, à un moment il est dit que :

                            -La directive permettant d'importer lemini_url/urls.pydans votreurls.pyprincipal :

                            url(r'^m/', include('mini_url.urls')),

                            et ensuite de ne pas oublier de nommer ses URL.

                            Mais je ne comprends pas qu'est ce qu'il faut nommer ?

                            Quelqu'un a t'il la réponse ?

                            Merci.

                            • Partager sur Facebook
                            • Partager sur Twitter
                              28 janvier 2018 à 13:05:07

                              MickLeRalec a écrit:

                              Bonjour,

                              Je suis actuellement au TP Mini_URL, mais je ne comprends pas, à un moment il est dit que :

                              -La directive permettant d'importer lemini_url/urls.pydans votreurls.pyprincipal :

                              url(r'^m/', include('mini_url.urls')),

                              et ensuite de ne pas oublier de nommer ses URL.

                              Mais je ne comprends pas qu'est ce qu'il faut nommer ?

                              Quelqu'un a t'il la réponse ?

                              Merci.

                              Si je ne dit pas de connerie, et si tu es bien sur une version antérieur, que ta fonction c'est url au lieu de path 
                              path('alink/', include('alink.urls'), name='link')

                              Après si url et path ne sont pas les mêmes fonctions de 2 versions différentes, je ne sais pas.
                              (+ dans la dernière version (2.0.1), balek des regex dans ces cas là)

                              -
                              Edité par AbcSxyZ 28 janvier 2018 à 13:09:58

                              • Partager sur Facebook
                              • Partager sur Twitter
                              Pour réussir dans la vie, je te conseille de te piquer à l'héro jusqu'à en crever.
                                28 janvier 2018 à 13:57:42

                                Bonjour a tous,

                                VRaiment tres cool, wao, super, je fuais le framework django a cause des expression réguliere qu'il faut utiliser pour créer les route. Maintenant que le cours est mis a jour ver la version 2.0, je suis tres content et près a passer a python et django. Je fesais avant ruby et rails, et mon probleme etait que la documentation est completement en anglais.

                                Merci beaucoup

                                • Partager sur Facebook
                                • Partager sur Twitter
                                Francel
                                  28 janvier 2018 à 15:34:34

                                  AbcSxyZ a écrit:

                                  MickLeRalec a écrit:

                                  Bonjour,

                                  Je suis actuellement au TP Mini_URL, mais je ne comprends pas, à un moment il est dit que :

                                  -La directive permettant d'importer lemini_url/urls.pydans votreurls.pyprincipal :

                                  url(r'^m/', include('mini_url.urls')),

                                  et ensuite de ne pas oublier de nommer ses URL.

                                  Mais je ne comprends pas qu'est ce qu'il faut nommer ?

                                  Quelqu'un a t'il la réponse ?

                                  Merci.

                                  Si je ne dit pas de connerie, et si tu es bien sur une version antérieur, que ta fonction c'est url au lieu de path 

                                  path('alink/', include('alink.urls'), name='link')

                                  Après si url et path ne sont pas les mêmes fonctions de 2 versions différentes, je ne sais pas.
                                  (+ dans la dernière version (2.0.1), balek des regex dans ces cas là)

                                  -
                                  Edité par AbcSxyZ il y a environ 1 heure

                                  Merci pour ta réponse,

                                  Cependant je ne comprends pas bien ta réponse, ma question était surement mal formulée,

                                  Je n'ai pas d'erreur quand je lance le serveur, le seul problème c'est que je ne parviens pas à accéder aux url de l'app mini_url, je pense que c'est à cause de "ne pas oublier de nommer ses URL" -> je n'arrive pas à comprendre ce que je dois faire...

                                  https://openclassrooms.com/courses/developpez-votre-site-web-avec-le-framework-django/tp-un-raccourcisseur-d-url

                                  Merci.

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    28 janvier 2018 à 22:48:55

                                    Ba déjà, la fonction path et url semble être identique (différence de version ? C'est ce que pour l'instant je suppose). Nommer ton url tu met un name="nom_url" dans ta fonction url (ou path) et tu vas pouvoir ainsi l'utiliser ce name pour l'utiliser ailleurs.

                                    Typiquement le meilleur exemple que je puisse te donner.

                                    <a href="{% url 'nom_url' %}"></a> 
                                    
                                    


                                    À partir de ça tu peux modifier tes urls dans ton fichier urls.py, sa permet de pointer cette url (comment pointé vers cette url sans ce nommage ?)

                                    Je ne réponds pas directement à ta question, mais j'ai regardé le tp le fichier urls.py de la correction, et ça à air plutôt lié. Je te laisse avancer là dessus.

                                    Nommer ses urls, lui mettre un nom? Je dis dis ça je dis rien.

                                    -
                                    Edité par AbcSxyZ 29 janvier 2018 à 9:59:41

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                    Pour réussir dans la vie, je te conseille de te piquer à l'héro jusqu'à en crever.
                                      28 janvier 2018 à 23:01:49

                                      @MickLeRalec Je pense que ce qui est demandé c'est simplement d'indiquer une variable name à ton url.

                                      Si tu ne vois pas de quoi je parle, voila la partie de la doc qui devrait t'intéresser: https://docs.djangoproject.com/en/1.10/topics/http/urls/#s-examples

                                      Bonne continuation.

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        29 janvier 2018 à 15:19:54

                                        jpettiau a écrit:

                                        Pierre-YvesMeusnier a écrit:

                                        Salut à tous, 

                                        Dans l'activité Développer une activité de blog complète j'ai un petit souci.

                                        En fait je construis mon formulaire à partie d'un ModelForm comme celui-ci :

                                        from django import forms
                                        from .models import Comment
                                        
                                        class CommentForm(forms.ModelForm):
                                            class Meta:
                                                model = Comment
                                                fields = ('sujet', 'email', 'pseudo', 'message')


                                        qui reprend les informations de mon modèle :


                                        class Comment(models.Model):
                                            """ Modèle pour les commentaires. A vous de l'écrire ! """
                                            sujet = models.CharField(max_length=100,)
                                            pseudo = models.CharField(max_length=42,)
                                            email = models.EmailField(null=False)
                                            message = models.TextField(null=True)
                                            date_commentaire = models.DateTimeField(default=timezone.now, verbose_name="Date du commentaire")
                                            commentaire_is_visible = models.BooleanField(verbose_name="commentaire publié ?",
                                                                             default=False)


                                        En fait, j'ai du mal à comprendre comment inclure le formulaire au sein de la même page que le détail de l'article. J'ai l'impression qu'il faut forcément recréer un template ainsi qu'une url pour le commentaire...

                                        S'il fallait l'appeler avec un lien je n'aurais pas de souci mais pour l'inclure dans la même page que le détail de l'article, je ne vois pas comment faire...

                                        Voici ma vue :

                                        def commentaire(request):
                                            form = CommentForm()
                                            return render(request, 'blog/lire_article.html', {'form': form})


                                        Et le template en question :

                                        <form action="{% url 'commentaire' %}" method="post">
                                            {% csrf_token %}
                                            {{ form.as_p }}
                                        
                                        		<p style="text-align:center">
                                        			<input class="pure-button pure-button-primary" type="submit" />
                                        		</p>
                                        	</form>

                                        Forcémment, ça ne fonctionne pas. Je n'affiche rien appart le bouton submit... 

                                        Quelqu'un peut m'aider ? Par avance merci

                                        Pourquoi est ce que tu rajoutes pas dans le template que tu utilises pout afficher les details de l'article une boucle for pour afficher les commentaires de l'articles que tu passes alors en argument de la fonction ?



                                        Merci pour ta réponse jpettiau. En fait mon problème c'est surtout déjà d'afficher les champs du formulaire à remplir car pour l'instant je n'arrive pas à les afficher sur la même page que l'article en question. je n'ai que le bouton submit. Que ce soit le cours d'OC ou d'autres tutos, j'ai l'impression qu'ils partent tous du principe de récréer un template spécialement pour le formulaire et d'ajouter une urlpattern  . Or, ce n'est pas ce qui est demandé dans le TP puisque la captur d'écran montre clairement l'affichage du formulaire sous le détail de l'article... 

                                        J'avais testé de recréer un template séparé contenant le formulaire et de l'appeller depuis mon template qui affiche le détail de l'article avec un lien, pas de souci. Je l'affiche bien mais du coup dans une autre page. 

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          29 janvier 2018 à 18:12:27

                                          @Pierre-YvesMeusnier

                                          <h3 class="titre-comments">Commentaires</h3>
                                          
                                          {% for comment in comments %}
                                          
                                          <div class="commentaire">
                                          
                                          <p>{{ comment.auteur }}, le {{ comment.date }}</p>
                                          
                                          <p>{{ comment.contenu|safe }}</p>
                                          
                                              </div>
                                          
                                          <hr />
                                          
                                          {% endfor %}
                                          
                                          <h4>Poster votre propre commentaire</h4>
                                          
                                          {% if envoi %}Votre message a bien été envoyé !{% endif %}
                                          
                                          <form action="{% url 'blog_lire' article.slug %}" method="post">
                                          
                                              {% csrf_token %}
                                          
                                              {{ form1.as_p }}
                                          
                                              <input type="submit" value="Submit" />
                                          
                                          </form>



                                          -
                                          Edité par jpettiau 29 janvier 2018 à 18:14:46

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            29 janvier 2018 à 18:37:41

                                            jpettiau a écrit:

                                            @Pierre-YvesMeusnier

                                            <h3 class="titre-comments">Commentaires</h3>
                                            
                                            {% for comment in comments %}
                                            
                                            <div class="commentaire">
                                            
                                            <p>{{ comment.auteur }}, le {{ comment.date }}</p>
                                            
                                            <p>{{ comment.contenu|safe }}</p>
                                            
                                                </div>
                                            
                                            <hr />
                                            
                                            {% endfor %}
                                            
                                            <h4>Poster votre propre commentaire</h4>
                                            
                                            {% if envoi %}Votre message a bien été envoyé !{% endif %}
                                            
                                            <form action="{% url 'blog_lire' article.slug %}" method="post">
                                            
                                                {% csrf_token %}
                                            
                                                {{ form1.as_p }}
                                            
                                                <input type="submit" value="Submit" />
                                            
                                            </form>



                                            -
                                            Edité par jpettiau il y a 16 minutes

                                            Super ! Merci !

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              2 mars 2018 à 12:15:47

                                              Bonjour, dans le cadre de mon option informatique en terminale, j'ai décidé de créer un site de rencontre avec le framework Django. Je n'arrive pas du tout a créer un algorithme de compatibilité, je dois créer un algorithme de compatibilité entre les critères recherchés par la personne et les différents profils pour ressortir un pourcentage de compatibilité. 

                                              Merci d'avance.

                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                2 mars 2018 à 14:59:41

                                                SachaGrinsztajn a écrit:

                                                Bonjour, dans le cadre de mon option informatique en terminale, j'ai décidé de créer un site de rencontre avec le framework Django. Je n'arrive pas du tout a créer un algorithme de compatibilité, je dois créer un algorithme de compatibilité entre les critères recherchés par la personne et les différents profils pour ressortir un pourcentage de compatibilité. 

                                                Merci d'avance.

                                                Félicitation, c'est courageux de t'attaquer à Django pour ton option informatique. Ta demande est très vaste, tout d'abord, es-tu à l'aise avec le langage Python et la POO ? Avant t’attaquer à l'algorithme en lui-même , pose toi le problème en français dans ta tête des informations dont ton algorithme a besoin pour fonctionner correctement et comment faire une comparaison cohérente de ces données.

                                                Si je peux te donner un conseil, avant de m'attaquer directement à Django qui va donner sa dimension "web" à ton projet, j'essaierai déjà de créer un programme simple en python en utilisant des données statiques.

                                                Tu pourrais par exemple très bien imaginer créer un classe Homme et une classe Femme dont les objets seraient les personnes et leurs attributs des critères (La taille, la couleur des yeux, l'âge; le poids etc...).  Je te donne cet exemple tout à fait au hasard car il y a différentes manières de voir les choses. 

                                                Ton algorithme pourrait faire en sorte de comparer les données recherchées par la personne avec les différents attributs que tu a renseigné et en fonction du taux de similarité ou au contraire de différence entre ces données, te fournir un pourcentage de compatibilité. 

                                                Une fois que tout celà sera bien défini dans ton programme, tu peux créer ton application web avec Django en stockant toutes ces infos dans une base de données et en les traitant de manière dynamique dans tes templates html. 

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  7 mars 2018 à 16:24:47

                                                  bonjour , j'ai un code dans le fichier django "views.py" mais il me dis que le script patterns n'existe pas:

                                                  from django.conf.urls import patterns, include, url
                                                  
                                                  from django.contrib import admin
                                                  admin.autodiscover()
                                                  
                                                  urlpatterns = patterns('',
                                                      # Examples:
                                                      # url(r'^$', 'eboutique.views.home', name='home'),
                                                      # url(r'^blog/', include('blog.urls')),
                                                  
                                                      url(r'^admin/', include(admin.site.urls)),
                                                      url(r'^$', 'backoffice.views.home', name='home'),
                                                  )


                                                  -
                                                  Edité par JeffFilbien 7 mars 2018 à 16:26:48

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    12 mars 2018 à 20:19:17

                                                    Bonjour , 

                                                    J'ai un problème pour affiché les models dans les vue.

                                                    Voici le code models.py:

                                                    from django.db import models

                                                    # Create your models here.

                                                    from django.utils import timezone

                                                    class Categorie(models.Model):

                                                        nom = models.CharField(max_length=30)

                                                        def __str__(self):

                                                            return self.nom

                                                    class Article(models.Model):

                                                        titre = models.CharField(max_length=100)

                                                        auteur = models.CharField(max_length=42)

                                                        contenu = models.TextField(null=True)

                                                        date = models.DateTimeField(default=timezone.now, 

                                                                                    verbose_name="Date de parution")

                                                        categorie = models.ForeignKey('Categorie', on_delete=models.CASCADE)

                                                        class Meta:

                                                            ordering = ['date']

                                                        def __str__(self):

                                                            return self.titre

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      14 mars 2018 à 14:41:34

                                                      Salut MouhaSarr, avant tout, https://openclassrooms.com/forum/sujet/presentation-des-sujets-important., pour toi aujourd'hui et demain, et pour nous.

                                                      J'ai bien peur que ta question ne soit pas clair, on a aucune info sur tes vues, donc on ne peut pas savoir vraiment où tu bloques avec tes modèles, tes imports sont ils bon dans tes vues, 

                                                      import myapp.models

                                                      Tes migrations sont-elles faites ? (pour autant je ne pense pas que cela soit indispensable pour utiliser ses modèles dans les vues)

                                                      Si tu bloques toujours au même endroit, hésite pas à clarifier.

                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                      Pour réussir dans la vie, je te conseille de te piquer à l'héro jusqu'à en crever.
                                                        15 mars 2018 à 16:24:03

                                                        salut ,

                                                        acbSxyZ surement c'est au niveau du view car si je lance le script du  views.py il me renvoie une message d'erreur "no module named [App]"

                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          15 mars 2018 à 18:21:01

                                                          Envoie ton script views.py, et si tu peux mettre le code de façon correcte (éventuellement corriger celui de dessus), perso je peux pas trop t'aider avec les infos que j'ai, tu l'as déjà dit que ton problème te semblait dans les vues dans ton premier message, tu clarifies pas grand chose je crois. 

                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                          Pour réussir dans la vie, je te conseille de te piquer à l'héro jusqu'à en crever.
                                                            15 mars 2018 à 20:05:09

                                                            Voici le views.py

                                                            from django.http import Http404

                                                            from django.shortcuts import render,get_object_or_404

                                                            from blog.models import Article

                                                            def accueil(request):

                                                                """ Afficher tous les articles de notre blog """

                                                                articles = Article.objects.all() # Nous sélectionnons tous nos articles

                                                                return render(request, 'blog/accueil.html', {'derniers_articles': articles})

                                                            def lire(request, id):

                                                                try:

                                                                    article = Article.objects.get(id=id)

                                                                except Article.DoesNotExist:

                                                                    raise Http404

                                                                return render(request, 'blog/lire.html', {'article': article})

                                                             Et voici le urls.py qui me renvoie une message qui dit "can not import views".
                                                            from django.urls import path
                                                            from . import views
                                                            urlpatterns = [
                                                                path('', views.accueil, name='accueil'),
                                                                path('article/<int:id>', views.lire, name='lire')
                                                            ]
                                                            Moi je comprend plus j'ai essayé tout jusqu'à ce que je me suis perdu.
                                                            • Partager sur Facebook
                                                            • Partager sur Twitter
                                                              16 mars 2018 à 1:08:13

                                                              J'ai essayer de réfléchier un peu à ton problème, je maitrise pas tout à fait les import entre différents fichiers, je met habituellement mes imports sous 
                                                              from myapp import views
                                                              dans urls.py, mais ça été l'occasion pour moi d'approfondir et 
                                                              from . import views

                                                              fonctionne bel et bien. Donc comme tu semble avoir un problème d'import et qu'il semble bon, hum.. dans la plus grande improbabilité, ton fichier views.py n'a pas été renommé ? Très improbable, mais c'est un peu le seul truc qui me vient en tête pour provoquer un problème d'import. Ton code me paraît correct (pas de la parole d'expert) alors bon... Si tu as des détails à ajouter, éventuellement, l'arborescence de ton fichier ou je sais pas trop... Je balance ton code de façon lisible des fois que quelqu'un d'autre ait de l'inspi. En espérant que cela puisse être utile, te donnes éventuellement une piste, mais pas totalement sur que je puisse t'aider pour le coup.

                                                              # models.py
                                                              from django.db import models
                                                              from django.utils import timezone
                                                              
                                                              class Categorie(models.Model):
                                                              
                                                                  nom = models.CharField(max_length=30)
                                                              
                                                                  def __str__(self):
                                                                      return self.nom
                                                              
                                                              class Article(models.Model):
                                                              
                                                                  titre = models.CharField(max_length=100)
                                                                  auteur = models.CharField(max_length=42)
                                                                  contenu = models.TextField(null=True)
                                                                  date = models.DateTimeField(default=timezone.now, 
                                                                                              verbose_name="Date de parution")
                                                                  categorie = models.ForeignKey('Categorie', on_delete=models.CASCADE)
                                                              
                                                              class Meta:
                                                                  ordering = ['date']
                                                              
                                                                  def __str__(self):
                                                              
                                                                      return self.titre
                                                              



                                                              ##views.py
                                                              
                                                              from django.http import Http404
                                                              from django.shortcuts import render,get_object_or_404
                                                              from blog.models import Article
                                                              
                                                              def accueil(request):
                                                                  """ Afficher tous les articles de notre blog """
                                                                  articles = Article.objects.all() # Nous sélectionnons tous nos articles
                                                                  return render(request, 'blog/accueil.html', {'derniers_articles': articles})
                                                              
                                                              def lire(request, id):
                                                                  try:
                                                                      article = Article.objects.get(id=id)
                                                                  except Article.DoesNotExist:
                                                                      raise Http404
                                                                  return render(request, 'blog/lire.html', {'article': article})
                                                              
                                                              
                                                              #urls.py
                                                              from django.urls import path
                                                              from . import views
                                                              urlpatterns = [
                                                                  path('', views.accueil, name='accueil'),
                                                                  path('article/<int:id>', views.lire, name='lire')
                                                              ]




                                                              -
                                                              Edité par AbcSxyZ 16 mars 2018 à 1:11:08

                                                              • Partager sur Facebook
                                                              • Partager sur Twitter
                                                              Pour réussir dans la vie, je te conseille de te piquer à l'héro jusqu'à en crever.

                                                              Exercices du cours Django / Vos questions

                                                              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                              • Editeur
                                                              • Markdown