7
votes

Exemple d'index du site Django Sitemap

J'ai suivi des modèles de relation:

class Section(models.Model):
    section = models.CharField(max_length=200, unique=True)
    name = models.CharField(max_length=200, blank = True)


class Article (models.Model):
    url = models.CharField(max_length = 30, unique=True)
    is_published = models.BooleanField()  
    section = models.ForeignKey(Section)


2 commentaires

Votre question n'est pas du tout clair. 1. Définissez-le comme décrit dans les documents. De quoi n'êtes-vous pas clair? 2. Quels paramètres? Quel fichier URL - voulez-vous dire urls.py? Cela n'a rien à voir avec un plan de plan. 3. Vous l'importaez, comme si vous souhaitez tout autre code que vous définissez dans un fichier différent.


Mais, pour créer une section Plan du site, j'ai besoin de mettre en œuvre un filtre. Quelque chose comme ceci: acticle.objects.filter (section = section.Object.get (section = section)) non sûr où dois-je implémenter le filtre


3 Réponses :


6
votes

Si je comprends bien, vous souhaitez utiliser l'index du site Plan du site qui pointerait des fichiers XML Sitemap Sitemap, chacun pour chaque section.

Django prend en charge cette fonctionnalité par Fourniture d'une vue Sitemap distincte pour les sitemaps d'index.

n'a pas utilisé cette fonctionnalité Avant, mais quelque chose comme ce qui suit fonctionnerait probablement dans votre cas. xxx


0 commentaires

1
votes

Pour moi, la réponse acceptée a eu un impact sur le développement et la vérification de la vitesse du cycle car elle a fait python gean.py exécuter plus lentement - j'avais un peu plus à faire dans la DB que cet exemple.

Voici les modifications que j'ai faites pour atténuer (adapté à l'exemple). N'ayez pas encore à tester le test, mais cela semble faire l'astuce (python3): xxx


0 commentaires

2
votes
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
    <url>
        <loc>http://localhost:8000/</loc>
        <changefreq>monthly</changefreq>
        <priority>0.6</priority>
    </url>
    <url>
        <loc>http://localhost:8000/about-us</loc>
        <changefreq>monthly</changefreq>
        <priority>0.6</priority>
    </url>
    <url>
        <loc>http://localhost:8000/our-story</loc>
        <changefreq>monthly</changefreq>
        <priority>0.6</priority>
    </url>
</urlset>

0 commentaires