{"id":20814820,"url":"https://github.com/microndgt/the-flask-mega-tutorial","last_synced_at":"2025-07-16T08:10:49.646Z","repository":{"id":132291459,"uuid":"117300911","full_name":"Microndgt/The-Flask-Mega-Tutorial","owner":"Microndgt","description":"📖《The Flask Mega-Tutorial》中文2018最新版📗","archived":false,"fork":false,"pushed_at":"2018-06-01T10:08:26.000Z","size":186,"stargazers_count":226,"open_issues_count":4,"forks_count":48,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-07-07T21:10:23.512Z","etag":null,"topics":["flask","python","sqlalchemy","translation","web"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Microndgt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-01-13T00:28:17.000Z","updated_at":"2025-06-26T09:11:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"0a974b02-96cc-4d49-80ee-9cf79ef6b871","html_url":"https://github.com/Microndgt/The-Flask-Mega-Tutorial","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Microndgt/The-Flask-Mega-Tutorial","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Microndgt%2FThe-Flask-Mega-Tutorial","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Microndgt%2FThe-Flask-Mega-Tutorial/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Microndgt%2FThe-Flask-Mega-Tutorial/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Microndgt%2FThe-Flask-Mega-Tutorial/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Microndgt","download_url":"https://codeload.github.com/Microndgt/The-Flask-Mega-Tutorial/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Microndgt%2FThe-Flask-Mega-Tutorial/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265495451,"owners_count":23776632,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flask","python","sqlalchemy","translation","web"],"created_at":"2024-11-17T21:18:19.758Z","updated_at":"2025-07-16T08:10:49.636Z","avatar_url":"https://github.com/Microndgt.png","language":"Python","readme":"# 《The Flask Mega-Tutorial》翻译计划\n\n进度 ![](https://img.shields.io/badge/status-52%25-green.svg)\n\n- 原文地址: [blog.miguelgrinberg.com](https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world)\n- 作者: `miguelgrinberg`\n\n简介\n---\n\n`The Flask Mega-Tutorial` 主要以 Flask 为 Web 框架，数据库使用关系型数据库，`Flask-SQLAlchemy` 为 ORM，`Flask-Migrate` 做数据库迁移工具，通过完成一个博客网站遇到的种种问题作为主线，提出相应的解决方法，从而完成整个网站的设计和搭建。\n\n通过阅读本文，你可以了解到在设计一个网站时候需要考虑什么，会遇到什么问题，可能的解决方式是什么，由此你可以对 Web 设计和开发有一个更全面的把握。\n\n注: \n\n1. 翻译内容可能不会和原文完全一样，这里对一些比较啰嗦的语句做了删节，但是会保证原意一致。\n2. 在翻译的同时，译者会添加一些相关实践中用到的东西以供参考。相关内容后都会有 `[译者注]` 标记。\n\n参与\n---\n\nFork 本仓库，翻译原文一部分，然后向本仓库提交一个 PR。可以是新的翻译，也可以是提 issue 以及任何有助于本项目的提交。\n\n- PR 以一篇文章为单位。\n- 在准备翻译某篇文章之后，请先看一下目前 master 分支的翻译进度和打开的PR，避免多个人翻译同一个地方。如果暂时还没有翻译，那么迅速初始化并且完成初始提交，并且开一个 PR。\n- 如果仍然出现多人发了同一节的 PR，那么将会按照时间顺序接受第一个 PR，后面的会拒绝 PR。\n- 一旦提交了 PR，那么请尽快的翻译，与此同时项目组也会对翻译内容进行 review，还请翻译者不断的润色和优化。\n- 内容使用 Markdown 组织。\n\n格式说明\n---\n\n1. 代码块部分请注明语言，在 Github 上可以对不同语言的代码进行渲染，方便阅读。参见 `issue#4`\n2. 字母，数字等字符和中文字符之间留有空格，方便阅读。中文正则匹配表达式 `[\\u4e00-\\u9fa5]`。参见 `issue#4`\n3. 其他格式排版参考 `master` 中已经翻译的部分。\n\n目录\n---\n\n- [Part I: Hello, World!](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part1.md) - done - 100%\n- [Part II: Templates](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part2.md) - done - 100%\n- [Part III: Web Forms](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part3.md) - done - 100%\n- [Part V: User Logins](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part5.md) - done - 100%\n- [Part VII: Error Handling](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part7.md) - done - 100%\n- [Part VIII: Followers](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part8.md) - done - 100%\n- [Part IX: Pagination](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part9.md) - done - 100%\n- [Part XII: Dates and Times](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part12.md) - done - 100%\n- [Part XIX: Ajax](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part14.md) - done - 100%\n- [Part XV: A Better Application Structure](https://github.com/Microndgt/The-Flask-Mega-Tutorial/blob/master/The-Flask-Mega-Tutorial/part15.md) - done - 100%\n\n贡献者\n===\n\nPull Request\n---\n\n- [Microndgt](https://github.com/Microndgt)\n- [vsxen](https://github.com/vsxen)\n- [zenghongtu](https://github.com/zenghongtu)\n\nIssue\n---\n\n- [lanpong](https://github.com/lanpong)\n\n工具\n===\n\nissue#4 文档格式检查工具\n---\n\n使用了 [fire](https://github.com/google/python-fire)\n\n- 查看帮助：`python format.py -- --help`\n\n```\nType:        function\nString form: \u003cfunction fix_format at 0x10ed82048\u003e\nFile:        format.py\nLine:        35\n\nUsage:       format.py PATH [VERBOSE] [TEST]\n             format.py --path PATH [--verbose VERBOSE] [--test TEST]\n             --test 只进行测试，并不输出文件\n             --verbose 显示格式检查详情\n```\n\n`python format.py README.md  --test --verbose`\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrondgt%2Fthe-flask-mega-tutorial","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicrondgt%2Fthe-flask-mega-tutorial","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrondgt%2Fthe-flask-mega-tutorial/lists"}