Définir des URL à charger iframe dans un modèle Django
Je veux charger une iframe dans un Django template. Le modèle est d'obtenir correctement chargé, mais à la place de l'iframe, le modèle lui-même est arriver intégré à l'intérieur du modèle parent. Le code pertinente est donnée ci-dessous:
<body>
<p>
<strong>Player: {{player.username}}</strong>
<div id="playerid">{{player.id}}</div><br>
<iframe id="encoder_iframe" height=75% width="50%" src="testgame.html"></iframe>
<br>
<strong>Last score:</strong>
<span id="scores"></span><br><br>
<strong>Game state:</strong>
<div id="gamestate"></span>
</p>
<br>
</body>
"testgame.html" est un fichier situé dans le même répertoire que la version HTML de ce modèle lui-même, mais il ne charge pas. À sa place, le modèle parent lui-même apparaît. J'ai cherché dans ce forum, et de certains messages, je suppose que j'ai besoin de l'attribut "src" de "iframe" pour un Django vue, ce qui vous permettra de charger l'iframe séparément. Est-ce correct? Si oui, comment dois-je le nom de l'URL (c'est à dire définir le chemin d'accès à la vue)?
Je serais heureux si vous m'avez aidé avec cela. Merci!!
- Le src de l'iframe est exactement le même que toute autre URL. Si vous attendez de Django pour le servir, ce que vous devez faire exactement la même comme vous le feriez avec tout autre Django page.
Vous devez vous connecter pour publier un commentaire.
Oui, vous avez pour créer la vue de charger le modèle. Le simplaset façon de le faire est d'utiliser générique TemplateView. Ajouter cette url pour
urlpatterns
dans votreurls.py
:Et
<iframe>
tag va ressembler:src
attribut doit pointer vers l'url où ce html est servi. Si vous servez de votre application alors ma réponse montre comment le faire. Si ce html est servi à partir de l'extérieur (pas le votre) site, puis de définirsrc
àexample.com/testgame.html
.url()
est nécessaire uniquement pour servir de ce modèle html de votre site. Si la source de html est un autre site alors que vous venez de pointer vers ce site dans lasrc
tag. Si fait<iframe<
balise ne fait pas de différence entre votre et site externe. Il vient de charges html à partir de url spécifiée.