Используйте Vue2
и Flask
для создания личного блога RESTful с отдельным интерфейсом и сервером.
Некоторые инструкции о проекте можно найти здесь. О IdealYard. Если вы не нашли то, что вам нужно, свяжитесь с нами по электронной почте или по вопросам.
Этот блог предназначен только для изучения принципов. На передней странице не реализован адаптивный макет. У меня пока нет сил для его реализации, и у меня нет времени заботиться о содержимом блога. Блоги о ежедневных записях в основном обновляются в Biyuan Pastoral Records.
Если вы новичок в Flask, я рекомендую вам книгу на китайском языке: «Веб-разработка Flask на практике: начало работы, углубленный анализ и принципиальный анализ». Я также являюсь читателем и бенефициаром этой книги. В то же время рекомендуется дополнительно посетить этот сайт: HelloFlask — место сбора ресурсов Flask.
В связи с истечением срока действия сервера в этом блоге нет функции демонстрации. Если кто-нибудь развернул его в Интернете и может предоставить демонстрационную ссылку, я был бы очень благодарен. А пока нажмите на ссылку ниже, чтобы посмотреть простую функциональную демонстрацию. Используйте Vue и Flask для создания функционального дисплея личного блога RESTful, который разделяет лицевую и внутреннюю части_bilibili(゜-゜)つロCheers~-bilibili
По причинам, упомянутым здесь, Flask-RESTful больше не является хорошим выбором. Возможно, flask-restx и Apiflask <китайская разработка> (примечание: поскольку эта платформа находится в стадии активной разработки, пожалуйста, внимательно оценивайте ее при использовании) являются более надежной альтернативой. .Хорошая замена. Если вам нужно учиться, также рекомендуется перейти на расширение, которое более активно поддерживается.
Обратите внимание на разницу между расширениями и платформами. См.: Не сравнивайте Flask и FastAPI вместе Ли Хуэй.
Поскольку «FastAPI следует сравнивать с платформой веб-API на основе Flask», какие объекты сравнения подходят? Хотя Flask-RESTX, Flask-Rebar, flask-apispec, flask-smorest, Flask-RESTful и APIFairy пытаются быть фреймворками, они по-прежнему являются расширениями Flask с точки зрения конкретной реализации.
Уведомление
Если в этом нет необходимости, пожалуйста, внимательно подумайте, стоит ли присоединяться! Некоторые студенты присоединились к группе, а затем покинули группу, не сказав ни слова. Эта операция подачи заявки на вступление в группу и последующего выхода из группы вызвала бы у меня ненужное беспокойство.
3.6+
mysql Ver 14.14 Distrib 5.7.26, for linux-glibc2.12 (x86_64) using EditLine wrapper
или
[root@python] # mysql --version
mysql Ver 15.1 Distrib 5.5.64-MariaDB, for Linux (x86_64) using readline 5.1
База данных режима разработки: iyblog_dev
, здесь вы можете изменить конфигурацию.
CREATE USER ' USERNAME '@ ' localhost ' IDENTIFIED BY ' PASSWORD ' ;
-- 如果需要支持emoji,则设置utf8mb4编码。否则使用utf-8编码即可
CREATE DATABASE DATABASENAME CHARSET = utf8mb4;
grant all privileges on DATABASENAME. * to USERNAME@localhost identified by ' PASSWORD ' ;
flush privileges;
После входа в текущий каталог сначала установите пакет управления Pipenv через pip.
pip install pipenv [--user]
Установите зависимости Python
pipenv install
Настройка переменных среды
vi .flaskenv
Отредактируйте файл dot.env, настройте переменные среды и переименуйте его в .env
vi dot.env
mv dot.env .env # 参考 master 分支
Пожалуйста, найдите в Интернете руководства по самостоятельной установке и изменению исходных кодов node и npm/yarn.
Часть внешнего развертывания демонстрируется с использованием npm
в качестве инструмента управления пакетами. Если вы используете yarn
для управления пакетами, измените его самостоятельно (если вы используете Yarn, вы определенно не найдете package.json
.)
Для настройки команд внешнего интерфейса обратитесь к главе scripts
в front/package.json
.
npm install
front/config/dev.env.js
на фактический адрес API.npm run dev
cd front
BASE_API
prod
среды // /idealyard/front/config/prod.env.js
module . exports = {
NODE_ENV : '"production"' ,
BASE_API : '"http://192.168.116.21:5000/api"' // TODO:修改为真实API地址
}
router
в режим history
// path: front/src/router/index.js:16
const router = new VueRouter ( {
// https://router.vuejs.org/zh/guide/essentials/history-mode.html#html5-history-%E6%A8%A1%E5%BC%8F
// mode: 'history',
routes : [ ]
} )
npm run build
Дополнительную информацию см. в файле document/deploy.md
.
проходить
Из-за нехватки времени некоторые проблемы все еще не решены. Подробную информацию см. здесь. Если кому-то из учащихся нужен PR
, вы также можете обратиться к известным нерешенным проблемам и спискам bug
здесь.
Вместо того, чтобы смотреть куда-то вверх, лучше встать здесь плечом к плечу. Конфигурацию режима разработки и инструкции см. в дополнительных документах.
Статистику структуры каталогов и объема кода можно найти здесь.
Благодаря поддержке г-жи G @Sabiner у меня возникла идея вести личный блог. Все началось с того дня, когда Цю Чуджи проходил мимо деревни Нюцзя...
Также поблагодарите @LeiWong за время, которое он потратил на поиск bug
и решение проблем, с которыми он столкнулся во время разработки.
Человек должен уметь сменить подгузник, спланировать вторжение, зарезать свинью, управлять кораблем, спроектировать здание, написать сонет, свести счета, построить стену, вправить кость, утешать умирающих, принимать приказы, давать приказывает, сотрудничает, действует в одиночку, решает уравнения, анализирует новую проблему, вносит навоз, программирует компьютер, готовит вкусную еду, эффективно сражается, доблестно умирает. Специализация — насекомые.
Мужчина должен уметь сменить подгузник, спланировать войну, убить свинью, управлять кораблем, спроектировать дом, написать сонет, рассчитаться, построить стену, соединить вывихнутые кости, утешить умирающего, подчиняться приказам, отдавайте приказы и работайте вместе, действуйте независимо, решайте математические уравнения, анализируйте новые проблемы, сгребайте навоз, занимайтесь компьютерным программированием, готовьте вкусные блюда, умейте сражаться и смело умирайте. Только насекомые ограничены одной категорией.
-- Роберт Энсон Хайнлайн, «Время достаточно, чтобы любить»