Flacon de manipulation d'un fichier PDF comme sa propre page
Pour mon site personnel, je veux avoir une page séparée juste pour mon cv, qui est un fichier PDF. J'ai essayé de plusieurs façons, mais je ne peux pas comprendre comment obtenir flacon de manipuler un fichier PDF.
Grâce. Permettez-moi de savoir si j'ai besoin de mieux expliquer ce que je suis en train de faire.
Pouvez-vous obtenir le serveur web pour desservir le fichier de façon statique (comme vous êtes probablement en train de faire pour votre
/static
fichiers de toute façon). Si oui, pouvez-vous faire juste un lien dans votre Flacon d'application pour les fichiers statiques?OriginalL'auteur Stealthy Stan | 2013-08-16
Vous devez vous connecter pour publier un commentaire.
Une note pour tous ceux qui sont venus à cette question, car ils sont en train de servir des fichiers PDF à partir d'une base de données avec le Flacon. L'incorporation d'un fichier PDF lorsque le fichier est stocké sur une base de données n'est pas aussi simple que quand il est dans la statique dossier. Vous devez utiliser le
make_response
de la fonction et de lui donner les en-têtes appropriés de sorte que le navigateur ne sait pas quoi faire avec votre binaire PDF de données, plutôt que de simplement le retour de la vue de fonctionner normalement. Voici un pseudo-code pour l'aider:Vous pouvez modifier le Contenu-Disposition de 'inline' à 'pièce jointe' si vous voulez que le fichier à télécharger plutôt que de s'afficher dans le navigateur. Vous pouvez également mettre ce point de vue dans un sous-domaine, par exemple docs.yourapp.com plutôt que de yourapp.com/docs. La dernière étape consiste à intégrer ce document dans le navigateur. Sur n'importe quelle page que vous souhaitez, il suffit d'utiliser rawrgulmuffin de la stratégie:
Vous pourriez même faire la src dynamique avec un Jinja2 modèle. Disons-le de cette dans doc.html (remarque les accolades):
Alors dans une vue de la fonction, il vous suffit de renvoyer le rendu du modèle avec les doc_id:
Il incorpore un document à la demande des utilisateurs à partir d'une base de données sur simple demande. Espérons que cela aide à toute personne travaillant avec des lots de fichiers Pdf dans une base de données!
OriginalL'auteur teechap
Vous avez deux options. Vous pouvez effectuer le rendu d'un modèle qui utilise des fichiers PDF statiques ou le rendu d'un modèle qui génère un PDF. J'irais personnellement avec la première option.
Ce DONC, la question est consacrée à la façon d'écrire une page HTML qui renvoie un fichier PDF. Vous pouvez l'utiliser dans vos jinja2 modèle.
Voici une façon rapide et sale pour le faire.
Ou, vous pouvez créer un jinja2 modèle qui définit tous les en-têtes nécessaires pour retourner un document PDF, puis de dire,
avec une fonction de vue statique qui retourne le pdf.
Vous pouvez lire plus sur la deuxième option, à ce flacon d'extrait de
C'est peut être juste le pdf. vous pouvez utiliser des chemins relatifs partir de n'importe quel dossier le modèle est appelé à partir d'. Donc, si votre structure est
app->templates->PDFTemplate.html
et que votre dossier est enapp->pdf.pdf
alors vous pouvez diresrc="../pdf.pdf"
.OriginalL'auteur AlexLordThorsen
Vous pouvez utiliser flacon
send_file
ousend_static_file
fonction dans 5 lignes:Cet extrait lien est utile
Pouvez également utiliser la
send_from_directory
si vous voulez envoyer un fichier à partir d'un certain répertoire:lire plus sur
send_from_directory
with
pour ouvrir un fichier, ce qui permet de s'assurer que le fichier est fermé après utilisation.Ok, Merci @Audrius-Kažukauskas
OriginalL'auteur Moh
Si vous essayez de faire de votre typique
où l'utilisateur clique sur le lien et le fichier pdf est téléchargé, vous devez placer vos documents dans votre statique dossier.
puis vous vous retrouvez avec quelque chose comme:
OriginalL'auteur Mwspencer