Как разработать интерфейс (UI) для моего сайта Django


26

Я изучаю Django и новичок в веб-разработке. Пожалуйста, извините, если вы нашли этот вопрос слишком глупым.

Итак, я создаю приложение Facebook с использованием Django, которое я хотел бы разместить в Google App Engine. Проект будет сосредоточен на чтении RSS / Atom-каналов любого веб-сайта (это все, что я могу сейчас сказать).

Я уверен, что достаточно для обработки файлов RSS / Atom, но меня беспокоит часть интерфейса пользователя («Интерфейс пользователя») - «Часть дизайна». Я не знаю HTML / CSS / JavaScript (я могу справиться с простыми HTML-вещами, но это не приводит ни к каким проектам).

Во-первых, я думал об использовании таких инструментов, как dreamweaver или какое-либо эквивалентное программное обеспечение, для разработки пользовательского интерфейса, но когда я действительно начал изучать django и изучать его, это кажется «невозможным».

Так,

  • Как мне разработать дизайн интерфейса моего сайта? Разве я не могу использовать такие инструменты, как Dreamweaver?

    • Если НЕТ, что лучше для парня, как я, который не знает JavaScript / CSS
    • Если ДА, что является лучшей альтернативой с открытым исходным кодом Dreamweaver?
    • Может ли Google App Engine справиться со всем этим?
  • Как люди, имеющие дело с Django, редактируют эти страницы шаблона. В Django упоминается, что он будет разделять логическую (представления) и конструкторскую (шаблоны) части, чтобы разные отделы в компании могли обрабатывать их отдельно. Но учитывая тот факт, что HTML-страницы Django заполнены «тегами», которые никак не связаны с HTML (проектирование), как люди с интерфейсом справляются с этим?


1
Сначала заставь это работать, а потом сделай это красиво.
августа

Ответы:


18

В документации Django никогда не упоминалось, что человек, который не знает, что такое HTML / JS / CSS, может использовать его. Разделение задач выполняется также в бэкэнде, где фактическое действие (представления) отделено от уровня базы данных или логики маршрутизации URL-адресов - что позволяет осуществлять слабую связь. Это никогда не означает, что вы можете писать представления, даже не понимая ваших моделей. Точно так же (ну, не так похоже), вам нужно иметь представление о HTML / CSS, чтобы получить базовые веб-страницы. Вы можете или не хотите изучать некоторые JS, но я думаю, что с HTML5 более или менее важно знать некоторый JavaScript.

Ни один здравомыслящий веб-разработчик не посоветует использовать такой редактор WYSIWYG, как DreamWeaver. Пишите HTML вручную. Вы можете, однако, использовать такие вещи, как HTML5 Bolierplate, чтобы ваш проект начался быстро.

Google AppEngine - это PaaS, который вы можете использовать для развертывания своего приложения. Помимо прочего, он будет предоставлять среду выполнения Python, хранилище данных с высокой репликацией и т. Д., Но не будет заботиться о создании вашего интерфейса.

Если вы собираетесь нанять кого-то, чтобы позаботиться о клиентском интерфейсе, этот человек в любом случае должен был бы знать, как использовать теги Django, так как на самом деле (если вы точно следуете шаблону MVC - или MTV), они определяют размытую линию. между «статическими» и «динамическими» веб-страницами. Даже если вы решите нанять фронтенд-разработчика, я предлагаю вам понять основы HTML и CSS (по крайней мере, настолько, чтобы вы знали, как это работает и как вы собираетесь обслуживать статические файлы CSS). Это только поможет вам в долгосрочной перспективе.

Не все люди имеют хорошие дизайнерские навыки, и дизайн, несомненно, лучше оставить квалифицированным людям, но когда речь идет о том, чтобы обслуживать страницы с таким дизайном, это все HTML и CSS. Таким образом, вы можете нанять человека, который удваивается (большинство делают) в качестве дизайнера внешнего интерфейса и разработчика внешнего интерфейса. Но я предлагаю вам не оставаться полностью не осведомленным о передовых технологиях.


2
+1 "нет здравомыслящего веб-разработчика"
msw

Вероятно, это правда, что ни один здравомыслящий веб- разработчик не захочет создавать HTML-шаблоны в чем-то похожем на Dreamweaver. Но большинство веб- дизайнеров, похоже, хотят использовать Dreamweaver или аналогичный для CSS, и в этом вопросе упоминается CSS. Так что было бы неплохо иметь какое-то направление в отношении работы с Dreamweaver и Django.
Westcroft_to_Apse

4

Что я делаю, так это то, что я либо проектирую макет в Dreamweaver, либо нанимаю дизайнера для создания «каркасов» HTML с поддельными данными, затем перехожу по нему и использую теги шаблонов Django (или Jinja), чтобы превратить его в рабочий шаблон. Я знаю немного HTML, но я никогда не смогу сделать что-нибудь привлекательное. Функциональная? Да! На что приятно смотреть? Глоб нет!

Итак, в заключение; Имея лишь базовые знания HTML, вы можете изменить готовый HTML-документ для работы в качестве шаблона.


1

В любом случае вам нужно понять, как работает HTML. Вы можете начать с простого макета без каких-либо графических красот.

Вы можете использовать любой редактор, который вам нравится (Dreamweaver или любой другой), но теги django связывают шаблон с программным кодом, поэтому ни один редактор не может сделать это с помощью WYSIWYG (то, что вы видите, это то, что вы получаете). В некоторых IDE есть несколько помощников для этих тегов, но не более того, они просто автоматизируют такие вещи, как закрытие тегов и так далее.

Или вы можете нанять фрилансера для создания и интеграции шаблона в ваше приложение, но это не лучший способ чему-то научиться :)


0

Возможно, научитесь использовать html + bootstrap. Bootstrap - это современный пакет для создания адаптивных сайтов, где CSS и JavaScripts почти, если не все, заботятся о вас. Так что не нужно копать путь глубоко в html + css + js.

То, что вы будете делать после того, как узнаете достаточно о начальной загрузке, - это перейти к этим примерам начальной загрузки и начать там свой веб-дизайн. Затем, когда вам понадобятся специфичные для компонента элементы, перейдите по этой ссылке .

Я очень мало знал о HTML, CSS, а JS и Bootstrap действительно спасли мою задницу. Вы должны будете знать основы этого, но если вы занимаетесь веб-разработкой, это не должно повредить.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.