2010-11-25 12 views
1

J'ai commencé à travailler sur "Développement de sites Web Django 1.0" et j'ai réussi à faire fonctionner mon serveur, mais lorsque je suis en train d'éditer mon fichier views.py, j'ai du mal à le modifier le code python dans emacs.Problème pour qu'emacs reconnaisse le mélange de code python et html

Le problème semble être une ligne qui contient les triples guillemets (« » «):

def main_page(request): 
    output = u''' 
    <html> 
    [more lines here] 
    </html> 
    ''' % (
    u'Django Bookmarks' 
    u'Welcome to Django Bookmarks', 
    u'Where you can store and share bookmarks!' 
) 
    return HttpResponse(output) 

Emacs indentation obtient tout foiré après u » « » ligne et donc je reçois des erreurs lorsque je tente charger la page générée à partir de cela. J'ai essayé plusieurs modes (y compris un mode nxhtml mumamo), mais jusqu'à présent, je peux faire en sorte qu'Emacs reconnaisse seulement le code python ou seulement le HTML, mais pas les deux en même temps. En deçà de l'édition du fichier sous forme de texte brut et de la manipulation des onglets moi-même, y a-t-il un autre moyen/

+0

python-mode.el (version 5.1.0) avec GNU Emacs 23.1.50.1 semble gérer les guillemets et l'indentation sans problème. Quelle version d'emacs et python-mode.el ou python.el utilisez-vous? – unutbu

+3

Je ne m'inquiéterais pas trop à ce sujet: ce n'est pas comme ça que vous affichez html dans Django. Vous utilisez des fichiers de modèle distincts. S'il a plus que quelques exemples de ce style, je voudrais jeter le livre et en obtenir un meilleur. – aaronasterling

+0

emacs is 23.1.1 [edit]: Je ne suis pas sûr de savoir comment vérifier la version de python-mode – aeroegnr

Répondre

4

Prenez l'indice.

Vous vous trompez. Rendez-vous au chapitre 3 sur les modèles avant même de penser à des outils pour soutenir ce que vous faites. Arrêtez d'essayer d'intégrer du code HTML dans vos fonctions d'affichage et vous constaterez qu'emacs n'est plus confus. Déplacez-vous le plus rapidement possible au chapitre suivant. Arrêtez de jouer avec emacs et continuez à apprendre Django. Aller plus loin dans le livre.

Mais HTML dans les fichiers modèles qui sont presque pur HTML avec quelques {{variable}} supplémentaires et {% tag %} choses lancées.

Vous n'avez pas de problème de "formatage emacs".

Vous avez un problème d'utilisation incorrecte de Django.

+0

Ok, bien c'est le code directement du livre que j'utilise pour essayer d'apprendre le cadre. – aeroegnr

+1

Pourquoi ne commencez-vous pas avec le tutoriel Django sur le site de Django? –

+0

Je suppose que je vais faire ça alors, ça me semble être une bien meilleure idée. – aeroegnr