web-dev-qa-db-fra.com

Comment développer le front end (UI) pour mon site Web Django

J'apprends Django et nouveau dans le développement web. Veuillez m'excuser si vous trouvez cette question trop stupide.

Donc, je crée une application Facebook en utilisant Django que j'aimerais héberger dans Google App Engine. Le projet se concentrerait sur la lecture des flux RSS/Atom feeds de n'importe quel site Web (c'est tout ce que je peux dire maintenant).

Je suis assez sûr pour traiter les fichiers RSS/Atom, mais je m'inquiète pour la partie front-end (interface utilisateur) - "La partie design". Je ne connais pas HTML/CSS/JavaScript (je peux gérer des trucs HTML simples mais cela ne mène à aucune conception).

Tout d'abord, j'ai pensé à utiliser des outils comme dreamweaver ou tout autre logiciel équivalent pour concevoir l'interface utilisateur, mais quand j'ai vraiment commencé à apprendre Django et à y entrer, cela semble être une chose "impossible".

Donc,

  • Comment dois-je concevoir la partie interface utilisateur de mon site? Je ne peux pas utiliser des outils comme dreamweaver?

    • Si NON, quelle est la meilleure façon pour un gars comme moi qui ne connaît pas JavaScript/CSS
    • Si OUI, quelle est la meilleure alternative open source à dreamweaver?
    • Google App Engine peut-il gérer tout cela?
  • Comment les gens qui traitent avec Django éditent ces pages de modèle. Le Django mentionne le il séparera les parties logiques (vues) et de conception (modèles) de sorte que différentes les départements d'une entreprise peuvent gérer séparément. Mais compte tenu du fait que les pages HTML de Django sont remplies de "balises" qui n'ont aucun lien avec le HTML (conception), comment les utilisateurs de l'interface utilisateur le gèrent-ils?

28
Amie

Les documents Django n'ont jamais mentionné qu'une personne qui ne sait pas de quoi parle HTML/JS/CSS peut l'utiliser. La séparation des préoccupations se fait également dans le backend, où l'action réelle (la vues) sont séparées de la couche de base de données ou de la logique de routage d'URL - Cela permet un couplage lâche. Cela ne signifie jamais que vous pouvez écrire des vues sans jamais comprendre vos modèles. De même (enfin, pas de la même manière), vous devez avoir un compréhension de HTML/CSS pour obtenir des pages Web de base. Vous pouvez ou non vouloir apprendre certains JS, mais je pense qu'avec HTML5, il est plus ou moins essentiel de connaître un peu de JavaScript.

Aucun développeur Web sensé ne conseillera d'utiliser un éditeur WYSIWYG comme DreamWeaver. Écrivez du HTML à la main. Vous pouvez cependant utiliser des choses comme HTML5 Bolierplate pour démarrer rapidement votre projet.

Google AppEngine est un PaaS que vous pouvez utiliser pour déployer votre application. Il fournira entre autres le runtime Python, une banque de données à réplication élevée, etc. - mais il ne se chargera pas de générer votre front-end.

Si vous allez embaucher quelqu'un pour s'occuper du front-end, cette personne devrait de toute façon savoir comment utiliser les balises Django, comme vraiment (si vous suivez le MVC - ou MTV étroitement), ils définissent la ligne floue entre les pages Web "statiques" et "dynamiques". Même si vous choisissez d'embaucher un développeur frontend, je vous suggère de saisir les bases du HTML et du CSS (au moins autant que vous le sachiez comment cela fonctionne et comment allez-vous servir les fichiers statiques CSS). Cela ne vous aidera qu'à long terme.

Toutes les personnes n'ont pas de bonnes compétences en conception, et la conception est sans aucun doute mieux laissée à des personnes qualifiées, mais lorsqu'il s'agit de servir des pages avec cette conception, tout est HTML et CSS. Vous pouvez donc embaucher une personne qui se double (la plupart le font) en tant que concepteur front-end et développeur front-end. Mais je vous suggère de ne pas ignorer complètement les technologies frontales.

18
yati sagade

Ce que je fais, c'est soit concevoir une mise en page dans dreamweaver, soit embaucher un concepteur pour créer des "wireframes" HTML avec de fausses données, puis je les passe en revue et j'utilise les balises de modèle de Django (ou Jinja) pour en faire un modèle de travail. Je connais du HTML, mais je ne serais jamais en mesure de rendre quelque chose d'attrayant. Fonctionnel? Oui! Agréable à regarder? Glob non!

Donc, en conclusion; Avec juste quelques connaissances de base en HTML, vous pouvez modifier un document HTML prédéfini pour qu'il fonctionne comme un modèle.

4
George Griffin

Quoi qu'il en soit, vous devrez comprendre comment fonctionne HTML. Vous pouvez commencer avec une mise en page simple sans aucune beauté graphique.

Vous pouvez utiliser n'importe quel éditeur que vous aimez (Dreamweaver ou autre) mais les balises de Django lient le modèle au code du programme, donc aucun éditeur ne peut le faire avec WYSIWYG (ce que vous voyez est ce que vous obtenez). Certains IDE ont peu d'aides pour ces balises, mais pas plus, ils automatisent simplement des choses comme la fermeture des balises, etc.

Ou vous pouvez embaucher un pigiste pour créer et intégrer un modèle dans votre application, mais ce n'est pas la meilleure façon d'apprendre quelque chose :)

1
ilvar

Peut-être apprendre à utiliser html + bootstrap. Bootstrap est un package moderne pour créer des sites réactifs où le CSS et les JavaScripts sont presque, sinon tous, pris en charge pour vous. Donc, pas besoin de creuser profondément en html + css + js .

Ce que vous ferez une fois que vous en saurez assez sur bootstrap, c'est de passer à ces exemples de bootstrap puis démarrez vos conceptions Web à partir de là. Ensuite, lorsque vous aurez besoin d'éléments spécifiques au composant , allez à ce lien alors.

Je savais très peu de choses sur HTML, CSS et JS et Bootstrap m'a vraiment sauvé le cul. Vous aurez cependant besoin de connaître les bases de ceux-ci, mais si vous êtes sur le développement Web, cela ne devrait pas blesser.

0
berdstack