published: {{ post.published_date }}
-{{ post.title }}
-{{ post.text|linebreaksbr }}
-diff --git a/.github/list_languages b/.github/list_languages new file mode 100755 index 00000000000..5bc27d43f0c --- /dev/null +++ b/.github/list_languages @@ -0,0 +1,20 @@ +#!/usr/bin/env python3 + +import json +import os +from pathlib import Path + + +def main(): + directory = Path(__file__).absolute().parent.parent + languages = sorted(x.name for x in directory.iterdir() + if x.is_dir() and len(x.name) == 2 and x.name != 'en') + + if 'GITHUB_ACTION' in os.environ: + print(f'::set-output name=languages::{json.dumps(languages[:2])}') + for language in languages[:2]: + print(language) + + +if __name__ == '__main__': + main() diff --git a/.github/workflows/translations.yml b/.github/workflows/translations.yml new file mode 100644 index 00000000000..a1c52ae845b --- /dev/null +++ b/.github/workflows/translations.yml @@ -0,0 +1,52 @@ +name: Update translations + +on: + workflow_dispatch: + schedule: + - cron: '4 4 * * 0' + +env: + GIT_AUTHOR_NAME: Django Girls Automation + GIT_AUTHOR_EMAIL: automation@theforeman.org + +jobs: + list_languages: + name: List languages + runs-on: ubuntu-latest + if: github.repository_owner == 'ekohl' + outputs: + languages: ${{ steps.set_list.outputs.languages }} + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Set the language list + id: set_list + run: ./.github/list_languages + + update_language: + name: 'Update ${{ matrix.language }} translations from Crowdin' + needs: list_languages + if: ${{ needs.list_languages.outputs.languages != '[]' }} + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + language: ${{ fromJson(needs.list_languages.outputs.languages) }} + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Update language + run: | + wget https://crowdin.com/backend/download/project/django-girls-tutorial/${{ matrix.language }}.zip + unzip ${{ matrix.language }}.zip + find ${{ matrix.language }} -name '*.md' -delete + rsync -av master/${{ matrix.language }}*/* ${{ matrix.language }}/ + rm -rf ${{ matrix.language }}.zip master + - name: Open a PR + uses: peter-evans/create-pull-request@v3 + with: + commit-message: "Update ${{ matrix.language }} translations from Crowdin" + branch: "update_translations/${{ matrix.language }}" + title: "Update ${{ matrix.language }} translations from Crowdin" + body: '' + delete-branch: true diff --git a/cs/GLOSSARY.md b/cs/GLOSSARY.md old mode 100755 new mode 100644 diff --git a/cs/README.md b/cs/README.md old mode 100755 new mode 100644 index 5ad33b27ddd..1ac284e7d6e --- a/cs/README.md +++ b/cs/README.md @@ -1,53 +1,51 @@ # Django Girls Tutoriál -[](https://gitter.im/DjangoGirls/tutorial?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) + +[](https://gitter.im/DjangoGirls/tutorial) > Tento návod je licencován pod Creative Commons Attribution-ShareAlike 4.0 mezinárodní licencí. Chcete-li zobrazit kopii této licence, navštivte https://creativecommons.org/licenses/by-sa/4.0/ -## Úvod +## Vítej -Už jsi někdy měla pocit, že svět stále více a více používá technologie a ty zůstáváš nějak pozadu? Přemýšlela jsi někdy, jak vytvořit webové stránky, ale nikdy jsi neměla dostatek motivace začít? Přemýšlela jsi někdy, že svět softwaru je pro tebe příliš složitý na to, abys zkusila něco naprogramovat sama? +Vítej v Django Girls Tutoriálu! We are happy to see you here. :) In this tutorial, we will take you on a journey under the hood of web technologies, offering you a glimpse of all the bits and pieces that need to come together to make the web work as we know it. -Máme pro tebe dobrou zprávu! Programování není tak těžké, jak se zdá, a zde ti chceme ukázat, jak zábavné to může být. +As with all unknown things, this is going to be an adventure - but no worries, since you already worked up the courage to be here, you'll be just fine. :) -Tento návod tě magicky nepromění v programátora. Jestli chceš být dobrá programátorka, budeš potřebovat měsíce nebo dokonce roky učení a praxe. Ale chceme ti ukázat, že programování nebo tvorba webových stránek není tak složitá, jak se zdá. Budeme se snažit ti vysvětlit různé kousky a střípky tak jednoduše, jak dokážeme, aby ses necítila technologiemi zastrašena. +## Úvod -Doufáme, že se nám podaří přiblížit ti tuto technologii tak, abys ji měla stejně ráda jako my! +Have you ever felt that the world is more and more about technology to which you cannot (yet) relate? Přemýšlela jsi někdy, jak vytvořit webové stránky, ale nikdy jsi neměla dostatek motivace začít? Přemýšlela jsi někdy, že svět softwaru je pro tebe příliš složitý, aby jsi zkusila něco naprogramovat sama? -## Co se naučíš během kurzu? +Máme pro tebe dobrou zprávu! Programování není tak těžké jak se zdá, a zde ti chceme ukázat, jak zábavné to může být. -Po dokončení kurzu budeš mít jednoduchou, fungující webovou aplikaci: vlastní blog. Ukážeme ti, jak ho zprovoznit online tak, aby se ostatní mohli na tvoji práci podívat! +This tutorial will not magically turn you into a programmer. Jestli chceš být dobrý programátor, budeš potřebovat měsíce nebo dokonce roky učení a praxe. Ale chceme ti ukázat, že programování nebo tvorba webových stránek není tak složitá, jak se zdá. Budeme se snažit ti vysvětlit různé kousky a střípky, tak jednoduše jak dokážeme, aby jsi se necítila zastrašena technologií. -Tvá aplikace bude (více či méně) vypadat takto: +Doufáme, že se nám podaří ti přiblížit tuto technologii tak, aby jsi ji měla stejně ráda jako my! -![Figure 0.1][2] +## Co se naučíš během kurzu? - [2]: images/application.png +Once you've finished the tutorial, you will have a small working web application: your own blog. We will show you how to put it online, so others will see your work! -> Pokud budeš procházet kurz sama bez učitele, který ti by ti pomáhal v případě, že narazíš na nějaký problém, máme pro tebe chat: [](https://gitter.im/DjangoGirls/tutorial?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge). Požádali jsme kouče a předchozí účastníky kurzu, aby čas od času pomáhali ostatním s tímto kurzem. Neboj se zde zeptat na jakoukoliv otázku! +Tvá aplikace (více či méně) bude vypadat takto: -OK, [začněme od začátku...][3] + - [3]: ./how_the_internet_works/README.md +> If you work with the tutorial on your own and don't have a coach who will help you in case of any problem, we have a chat system for you: [](https://gitter.im/DjangoGirls/tutorial). Požádali jsme kouče a předchozí účastníky kurzu, aby čas od času pomáhali ostatním s tímto kurzem! Neboj se zde zeptat na jakoukoliv otázku! -## O kurzu a přispěvatelích +OK, [let's start at the beginning…](./how_the_internet_works/README.md) + +## Following the tutorial at home -Tento kurz je provozován organizací [DjangoGirls][4]. Pokud najdeš nějaké chyby, nebo chceš aktualizovat návod, prosím, [postupuj podle pokynů pro přispívající][5]. +It is amazing to take part in a Django Girls workshop, but we are aware that it is not always possible to attend one. This is why we encourage you to try following this tutorial at home. For readers at home, we are currently preparing videos that will make it easier to follow the tutorial on your own. It is still a work in progress, but more and more things will be covered soon at the [Coding is for girls](https://www.youtube.com/channel/UC0hNd2uW8jTR5K3KBzRuG2A/feed) YouTube channel. - [4]: https://djangogirls.org/ - [5]: https://github.com/DjangoGirls/tutorial/blob/master/README.md +In every chapter already covered, there is a link that points to the correct video. -## Český překlad +## O kurzu a přispěvatelích -Původní DjangoGirls tutoriál přeložila do češtiny skupina dobrovolníků. Poděkování patří hlavně: -Davidovi (dakf), Kristýně Kumpánové, Veronice Gabrielové, Tomáši Ehrlichovi, -Aničce Jaegerové, Matějovi Stuchlíkovi, Filipovi Sivákovi a Juraji M. Bezručkovi. +Tento kurz je provozován [DjangoGirls](https://djangogirls.org/). Pokud najdeš nějaké chyby, nebo chceš aktualizovat návod, prosím,[postupuj podle pokynů pro přispívající](https://github.com/DjangoGirls/tutorial/blob/master/README.md). -## Chtěla bys nám pomoci přeložit návod do jiných jazyků? +## Would you like to help us translate the tutorial into other languages? -V současné době jsou překlady provozovány na platformě crowdin.com na adrese: +Currently, translations are being kept on crowdin.com platform at: https://crowdin.com/project/django-girls-tutorial -Pokud tvůj jazyk není uveden v seznamu na crowdin, prosím, [založ nový požadavek][6] pro přidání dalšího jazyka. - - [6]: https://github.com/DjangoGirls/tutorial/issues/new +If your language is not listed on [crowdin](https://crowdin.com/), please [open a new issue](https://github.com/DjangoGirls/tutorial/issues/new) informing us of the language so we can add it. \ No newline at end of file diff --git a/cs/SUMMARY.md b/cs/SUMMARY.md old mode 100755 new mode 100644 index 44793ad9d19..080c990996d --- a/cs/SUMMARY.md +++ b/cs/SUMMARY.md @@ -1,26 +1,35 @@ # Shrnutí -* [Úvod](README.md) -* [Instalace](installation/README.md) -* [Jak funguje internet](how_the_internet_works/README.md) -* [Úvod do příkazové řádky](intro_to_command_line/README.md) -* [Instalace Pythonu](python_installation/README.md) -* [Editor zdrojového kódu](code_editor/README.md) -* [Úvod do Pythonu](python_introduction/README.md) -* [Co je Django?](django/README.md) -* [Instalace Django](django_installation/README.md) -* [Tvůj první Django projekt!](django_start_project/README.md) -* [Django modely](django_models/README.md) -* [Django admin](django_admin/README.md) -* [Nasazení!](deploy/README.md) -* [Django URL](django_urls/README.md) -* [Django views -- je čas začít tvořit!](django_views/README.md) -* [Úvod do HTML](html/README.md) -* [Django ORM (tvorba dotazů)](django_orm/README.md) -* [Dynamická data v šablonách](dynamic_data_in_templates/README.md) -* [Django šablony](django_templates/README.md) -* [CSS - udělejte svou aplikaci hezčí](css/README.md) -* [Rozšíření šablon](template_extending/README.md) -* [Rozšíření vaší aplikace](extend_your_application/README.md) -* [Django formuláře](django_forms/README.md) -* [Co dál?](whats_next/README.md) +* [Úvod](README.md) +* [Instalace](installation/README.md) + * [Command Line](installation/README.md#command-line) + * [Python](installation/README.md#python) + * [Code Editor](installation/README.md#code-editor) + * [Virtual Environment](installation/README.md#virtualenv) + * [Django](installation/README.md#django) + * [Git](installation/README.md#git) + * [GitHub](installation/README.md#github-account) + * [PythonAnywhere](installation/README.md#pythonanywhere-account) +* [Installation (chromebook)](chromebook_setup/README.md) +* [Jak funguje Internet](how_the_internet_works/README.md) +* [Úvod do příkazové řádky](intro_to_command_line/README.md) +* [Instalace Pythonu](python_installation/README.md) +* [Editor zdrojového kódu](code_editor/README.md) +* [Úvod do Pythonu](python_introduction/README.md) +* [Co je Django?](django/README.md) +* [Instalace Django](django_installation/README.md) +* [Tvůj první Django projekt!](django_start_project/README.md) +* [Django modely](django_models/README.md) +* [Django admin](django_admin/README.md) +* [Nasazení!](deploy/README.md) +* [Django URLs](django_urls/README.md) +* [Django views – time to create!](django_views/README.md) +* [Úvod do HTML](html/README.md) +* [Django ORM (tvorba dotazů)](django_orm/README.md) +* [Dynamická data v šablonách](dynamic_data_in_templates/README.md) +* [Django šablony](django_templates/README.md) +* [CSS – make it pretty](css/README.md) +* [Rozšiřování šablon](template_extending/README.md) +* [Rozšíření tvé aplikace](extend_your_application/README.md) +* [Django formuláře](django_forms/README.md) +* [Co dál?](whats_next/README.md) \ No newline at end of file diff --git a/cs/chromebook_setup/README.md b/cs/chromebook_setup/README.md new file mode 100644 index 00000000000..802d9c77ac9 --- /dev/null +++ b/cs/chromebook_setup/README.md @@ -0,0 +1,5 @@ +# Chromebook setup + +> **Poznámka** Pokud jsi již prošla [instalačními kroky](../installation/README.md), není třeba to znovu dělat – můžeš přeskočit přímo vpřed na [Úvod do Pythonu](../python_introduction/README.md). + +{% include "/chromebook_setup/instructions.md" %} \ No newline at end of file diff --git a/cs/chromebook_setup/instructions.md b/cs/chromebook_setup/instructions.md new file mode 100644 index 00000000000..7b9ff79bfee --- /dev/null +++ b/cs/chromebook_setup/instructions.md @@ -0,0 +1,158 @@ +Pokud nepoužíváš Chromebook, můžeš [přeskočit přímo na tuto sekci](http://tutorial.djangogirls.org/en/installation/#install-python). Pokud Chromebook používáš, postup instalace se bude trochu lišit. Takže zbytek návodu k instalaci můžeš ignorovat. + +### Cloud IDE (PaizaCloud Cloud IDE, AWS Cloud9, Glitch.com) + +Cloud IDE je nástroj, který ti umožňuje využívat editor kódu a přístup k počítači běžícím na internetu, kde můžeš instalovat, psát a spouštět software. V průběhu tutoriálu se Cloud IDE bude chovat jako tvůj *lokální počítač*. Příkazy budeš psát stále pomocí příkazové řádky v terminálu stejně jako tví spolužáci na OS X, Ubuntu nebo Windows, ale tvůj terminál bude propojený s počítačem běžícím někde jinde, což je řešeno pomocí Cloud IDE. Zde jsou instrukce pro cloud IDEs (PaizaCloud Cloud IDE, AWS Cloud9, Glitch.com). Můžeš si vybrat jedno z Cloud IDE řešení a následovat instrukce nastavení pro zvolený typ. + +#### PaizaCloud ID + +1. Jdi na [PaizaCloud Cloud IDE](https://paiza.cloud/) +2. Zaregistruj se nebo se přihlaš ke svému účtu, pokud již registrovaná jsi. +3. Klikni na *Nový Server* a vyber možnost Django App. +4. Klikni na tlačítko Terminál (na levé straně okna). + +Nyní bys měla vidět rozhraní s postranním panelem a tlačítka nalevo. Klikni na tlačítko Terminál, kde po otevření příkazové řádky uvidíš něco jako: + +{% filename %}Terminal{% endfilename %} + + $ + + +Terminál v PaizaCloud IDE je připraven a čeká na tvé příkazy. Můžeš měnit velikost okna, pokud ti nevyhovuje velikost zobrazení. + +#### AWS Cloud9 + +Momentálně Cloud9 vyžaduje, aby ses přihlásila pomocí AWS účtu a zadala jako platební metodu tvou platební kartu. + +1. Nainstaluj si Cloud9 z odkazu [Chrome webový obchod](https://chrome.google.com/webstore/detail/cloud9/nbdmccoknlfggadpfkmcpnamfnbkmkcp) +2. Běž na [c9.io](https://c9.io) a klikni na *Get started with AWS Cloud9* +3. Přihlaš se pomocí svého AWS účtu (vyžaduje zadání platebních údajů, ale bude možné využívat jej zdarma bez placení). +4. V AWS nástěnce vlož *Cloud9* ve vyhledávacím políčku a dej vyhledat. +5. Na Cloud9 nástěnce klikni na *Vytvořit prostředí* +6. Pojmenuj to jako *django-girls* +7. Zatímco se konfiguruje nastavení, pro "Typ prostředí" vyber možnost *Vytvořit novou instanci pro prostředí (EC2)* a jako "Typ instance" zvol *t2.micro* (mělo by zmiňovat ""Free-tier eligible."). Výchozí nastavení plateb a výdajů lze nechat tak, jak je a stejně pokračovat i u dalších nastavení. +8. Klikni na *Další krok* +9. Klikni na *Vytvořit prostředí* + +Nyní bys měla vidět rozhraní s postranním panelem a velkým hlavním oknem, kde bude nějaký text a malé okno v dolní části stránky, které vypadá přibližně takto: + +{% filename %}bash{% endfilename %} + + yourusername:~/workspace $ + + +Tato dolní část je tvůj terminál. Můžeš jej použít pro zadání příkazů pro vzdálený Cloud9 počítač. Můžeš měnit velikost okna, jak potřebuješ. + +#### Glitch.com Cloud IDE + +1. Go to [Glitch.com](https://glitch.com/) +2. Sign up for an account (https://glitch.com/signup) or use your GitHub account if you have one. (See GitHub instructions below.) +3. Click *New Project* and choose *hello-webpage* +4. Click on the Tools dropdown list (at the bottom left side of the window), then on Terminal button to open terminal tab with a prompt like this: + +{% filename %}Terminal{% endfilename %} + + app@name-of-your-glitch-project:~ + + +When using Glitch.com as your Cloud IDE, you don't have to create a virtual environment. Instead, create the following files manually: + +{% filename %}glitch.json{% endfilename %} + +```json +{ + "install": "pip3 install -r requirements.txt --user", + "start": "bash start.sh", + "watch": { + "throttle": 1000 + } +} +``` + +{% filename %}requirements.txt{% endfilename %} + + Django~={{ book.django_version }} + + +{% filename %}.bash_profile{% endfilename %} + +```bash +alias python=python3 +alias pip=pip3 +``` + +{% filename %}start.sh{% endfilename %} + +```bash +chmod 600 .bash_profile +pip3 install -r requirements.txt --user +python3 manage.py makemigrations +python3 manage.py migrate +python3 manage.py runserver $PORT +``` + +Once these files are created, go to the Terminal and execute the following commands to create your first Django project: + +{% filename %}Terminal{% endfilename %} + + django-admin.py startproject mysite . + refresh + + +In order to see detailed error messages, you can activate Django debug logs for your Glitch application. Simply add the following at the end of the `mysite/settings.py` file. + +{% filename %}mysite/settings.py{% endfilename %} + +```python +LOGGING = { + 'version': 1, + 'disable_existing_loggers': False, + 'handlers': { + 'file': { + 'level': 'DEBUG', + 'class': 'logging.FileHandler', + 'filename': 'debug.log', + }, + }, + 'loggers': { + 'django': { + 'handlers': ['file'], + 'level': 'DEBUG', + 'propagate': True, + }, + }, +} +``` + +This will create a `debug.log` file detailing Django operations and any error messages that might come up, making it much easier to fix if your website does not work. + +The initial restarting of the Glitch project should fail. (If you click on the top dropdown button `Show` then click on `In a New Window`, you will receive a `DisallowedHost` error message.) Do not worry about it at this stage, the tutorial will fix this as soon as you update the Django settings of your project in the `mysite/settings.py` file. + +### Virtuální prostředí + +A virtual environment (also called a virtualenv) is like a private box we can stuff useful computer code into for a project we're working on. We use them to keep the various bits of code we want for our various projects separate so things don't get mixed up between projects. + +Run: + +{% filename %}Cloud 9{% endfilename %} + + mkdir djangogirls + cd djangogirls + python3 -m venv myvenv + source myvenv/bin/activate + pip install django~={{ book.django_version }} + + +(note that on the last line we use a tilde followed by an equal sign: `~=`). + +### GitHub + +Make a [GitHub](https://github.com) account. + +### Python Anywhere + +The Django Girls tutorial includes a section on what is called Deployment, which is the process of taking the code that powers your new web application and moving it to a publicly accessible computer (called a server) so other people can see your work. + +This part is a little odd when doing the tutorial on a Chromebook since we're already using a computer that is on the Internet (as opposed to, say, a laptop). However, it's still useful, as we can think of our Cloud 9 workspace as a place for our "in progress" work and Python Anywhere as a place to show off our stuff as it becomes more complete. + +Thus, sign up for a new Python Anywhere account at [www.pythonanywhere.com](https://www.pythonanywhere.com). \ No newline at end of file diff --git a/cs/code_editor/README.md b/cs/code_editor/README.md old mode 100755 new mode 100644 index f91d7968087..8ce898b2940 --- a/cs/code_editor/README.md +++ b/cs/code_editor/README.md @@ -1,7 +1,11 @@ # Editor zdrojového kódu +> Čtení na doma: tato kapitola je pokryta ve videu [Instalujeme pro Python & Editor kódu](https://www.youtube.com/watch?v=pVTaqzKZCdA&t=4m43s). + Právě se chystáš napsat svůj první řádek kódu, takže je čas sáhnout po editoru kódu! -> **Poznámka** Mohla jsi to udělat už dříve v kapitole o instalaci - jestli je to tak, prostě jen tuhle kapitolu přeskoč a vrhni se na další! +> **Poznámka** POkud používáš Chromebook přeskoč tuto kapitolu a ujisti se, že následuješ pokyny pro [Nastavení Chromebooku](../chromebook_setup/README.md). Cloudové IDE, které si vybereš (Paiza Cloud nebo AWS Cliud9) zahrnuje editor kódu a když otevřeš soubor ve tvém IDE z nabídky souborů, automaticky použije editor kódu. +> +> **Poznámka** Je možné, že jsi to již udělala dříve v [kapitole o instalaci](../installation/README.md) – pokud ano, můžeš přeskočit rovnou an další kapitolu!! {% include "/code_editor/instructions.md" %} \ No newline at end of file diff --git a/cs/code_editor/instructions.md b/cs/code_editor/instructions.md old mode 100755 new mode 100644 index 3b8fcc902ec..e6816a35790 --- a/cs/code_editor/instructions.md +++ b/cs/code_editor/instructions.md @@ -1,7 +1,13 @@ -Existuje mnoho různých editorů a z velké části se výběr scvrkává na osobní preference. Většina programátorům v Pythonu používá složité, ale mimořádně mocné IDE (integrovaná vývojová prostředí), například PyCharm. Pro začátečníka to může být pravděpodobně méně vhodné; naše doporučení jsou stejně mocná, ale mnohem jednodušší. +Existuje mnoho různých editorů a z velké části se výběr scvrkává na osobní preference. Většina programátorů v Pythonu používá složité, ale mimořádně mocné IDE (integrovaná vývojová prostředí), například PyCharm. Pro začátečníka to může být pravděpodobně méně vhodné, naše doporučení jsou stejně mocná, ale mnohem jednodušší. Naše návrhy jsou napsané níže, ale neváhejte se zeptat svého kouče, jaké jsou jeho preference - poté bude i jednodušší získat od něj pomoc s prací v editoru. +## Visual Studio Code + +XPath: /p[3]. Zahrnuje technickou podporu pro tzv. debugging, kompletní možnost práce s Gitem, zvýrazňování syntaxe jazyka, inteligentní pomoc pro psaní kódu, napovědu a možnost refactorovat kód. + +[Stáhnout si jej můžeš zde](https://code.visualstudio.com/) + ## Gedit Gedit je open-source editor. Je k dispozici zdarma pro všechny operační systémy. @@ -10,22 +16,22 @@ Gedit je open-source editor. Je k dispozici zdarma pro všechny operační syst ## Sublime Text -Sublime Text je velmi oblíbený editor s bezplatnou zkušební dobou. Lze jej snadno nainstalovat a používat. Je k dispozici pro všechny operační systémy. +Sublime je velmi oblíbený a známý editor s možností využít zkušební verzi zdarma a je dostupný pro všechny operační systémy. [Stáhnout si jej můžeš zde](https://www.sublimetext.com/) ## Atom -Atom je velmi nový editor kódu vytvořen [GitHub](https://github.com/)em. Je zdarma, je open-source a má snadnou instalaci a snadné použití. Je k dispozici pro Windows, OS X a Linux. +Atom je další populární editor. Je zdarma, open-source a je k dispozici pro Windows, OS X a Linux. Atom byl vyvinut firmou [GitHub](https://github.com/). -[Stáhnout si jej můžeš zde](https://atom.io/) +[Stáhnout si jej můžete zde](https://atom.io/) -## Proč jsme instalovali editor kódu? +## Proč instalujeme editor kódu? -Možná přemýšlíš, proč instalujeme speciální editor kódu a proč raději nezvolíme něco jako Notepad nebo Word. +Možná přemýšlíte, proč instalujeme speciální editor a proč raději nezvolíme něco jako Notepad nebo Word. -První důvod je, že kód musí být **prostý text** a programy jako Word a Textedit ve skutečnosti produkují bohatý text (s fonty a formátováním), používají vlastní formáty jako [RTF (Rich Text Format)](https://en.wikipedia.org/wiki/Rich_Text_Format). +První důvod je, že kód musí být **prostý text** a problém s programy jako Word a Textedit je ten, že ve skutečnosti neprodukují prostý text ale bohatý text (s fonty a formátováním), používají vlastní formáty jako [RTF (Rich Text Format)](https://en.wikipedia.org/wiki/Rich_Text_Format). -Druhým důvodem je, že editory kódu se specializují na editaci kódu, takže mohou poskytovat užitečné funkce, jako je barevné zvýraznění kódu podle jeho významu nebo automatické ukončování uvozovek apod. +Druhým důvodem je, že editory kódu jsou pro tuto práci uzpůsobené tak, že poskytují užitečné pomůcky jako je barevné zvýrazňování různých částí kódu podle jejich významu či automatické uzavírání uvozovek. -Vše to uvidíme v akci později. Brzy ti přijde tvůj oblíbený editor kódu jako jeden z tvých nejlepších nástrojů :) +V akci to uvidíme později. Brzy budeš na svůj editor kódu nahlížet jako na jeden ze svých oblíbených nástrojů. :) \ No newline at end of file diff --git a/cs/css/README.md b/cs/css/README.md old mode 100755 new mode 100644 index acc0961ec20..e6217e32fe0 --- a/cs/css/README.md +++ b/cs/css/README.md @@ -1,135 +1,135 @@ -# CSS - aby byla tvoje aplikace krásná! +# CSS - zkrášli svou stránku! Náš blog nevypadá stále dost pěkně, že? Je na čase ho udělat hezčí! Použijeme na to CSS. ## Co je to CSS? -CSS (neboli Cascading Style Sheets) je jazyk používaný pro popis vzhledu a formátování webové stránky. Je to značkovací jazyk (jako HTML). Ber ho jako make-up pro náš web ;). +Kaskádové styly (Cascading Style Sheets, CSS) je jazyk používáný pro popis vzhledu a formátu webové stránky napsané ve značkovacím jazyce (jako například HTML). Berte to jako make-up pro naši webovou stránku. ;) -Nechceme ale zase začínat úplně od začátku, že? Opět použijeme něco, co již bylo vytvořeno jinými programátory a sdíleno zdarma na internetu. Vymýšlet znovu, co již před námi někdo vymyslel, to by nebyla žádná legrace. +Ale nechceme začínat od nuly, že? Znovu použijeme něco, co už někdo vytvořil a umístil na Internet aby to mohli ostatní programátoři používat zdarma. Vymýšlení už vymyšlených věcí není zábava. ## Použijme Bootstrap! -Bootstrap je jedním z nejpopulárnějších HTML a CSS frameworků pro vývoj pěkné webové stránky: https://getbootstrap.com/ +Bootstrap je jeden z nejpopulárnějších frameworků pro HTML a CSS na vytváření krásných webových stránek: https://getbootstrap.com/ -Napsali ho programátoři, kteří pracovali pro Twitter, a nyní ho vyvíjí dobrovolníci z celého světa. +Byl vytvořen programátory, kteří pracovali pro Twitter. Nyní je Bootstrap vyvíjen dobrovolníky po celém světě! ## Instalace Bootstrapu -Chceš-li nainstalovat Bootstrap, je třeba přidat do `< head >` v souboru `.html` (`blog/templates/blog/post_list.html`): +Pro instalaci Bootstrapu otevři svůj `.html` soubor v kódovém editoru a přidej tohle do `
` sekce: + +{% filename %}blog/templates/blog/post_list.html{% endfilename %} ```html - - + ``` -To nepřidá žádné soubory do projektu. Jen to odkazuje na soubory, které existují na internetu. Jen do toho, otevři tvůj web a aktualizuj stránku. Hurá! - -![Obrázek 14.1][1] +Nepřidá to žádné soubory do tvého projektu. Jen to ukazuje na soubory, které existují na Internet. Takže do toho, otevři svoji webovou stránku a obnov ji. To je ono! - [1]: images/bootstrap1.png + Hned to vypadá lépe! ## Statické soubory v Djangu -Konečně se podíváme zblízka na téma, které jsme již zmínili, **statické soubory**. Statické soubory jsou všechny naše CSS soubory a obrázky, které nejsou dynamické, takže jejich obsah není závislý na kontextu požadavku a budou pro každého uživatele stejné. +Konečně se podíváme zblízka na téma, které jsme již zmínili, **statické soubory**. Statické soubory jsou všechna tvá CSS a obrázky. Jejich obsah nezávisí na kontextu požadavku a bude stejný pro každého uživatele. ### Kam umístit statické soubory pro Django -Jak jsi viděla, když jsme spustili `collectstatic` na serveru, Django už ví, kde najít statické soubory pro vestavěnou aplikaci "admin". Teď jen musíme přidat nějaké statické soubory pro vlastní aplikaci, `blog`. +Django již ví, kde najít statické soubory pro vestavěnou "admin" aplikaci. Nyní potřebujeme přidat nějaké statické soubory do naší vlastní aplikace, `blog`. Uděláš to tak, že vytvoříš složku s názvem `static` uvnitř aplikace blog: -``` -djangogirls -├── blog -│ ├── migrations -│ ├── static -│ └── templates -└── mysite -``` + djangogirls + ├── blog + │ ├── migrations + │ ├── static + │ └── templates + └── mysite + -Django automaticky najde všechny složky s názvem "static" uvnitř vašich složek aplikací a bude moci využívat jejich obsah jako statické soubory. +Django bude automaticky hledat jakékoliv složky nazvané "static" uvnitř tvých složek v aplikaci. Poté bude schopný použít jejich obsah jako statické soubory. ## Tvůj první soubor CSS! -Pokud chceš na webovou stránku přidat svůj vlastní styl, vytvoř css soubor. Vytvoř nový adresář s názvem `css` uvnitř adresáře `static`. Vytvoř nový soubor s názvem `blog.css` uvnitř tohoto adresáře `css`. Připraveno? - -``` -djangogirls -└─── blog - └─── static - └─── css - └─── blog.css -``` - -Čas napsat nějaké CSS! Otevři soubor `blog/static/css/blog.css` v editoru kódu. +Pojďme vytvořit nějaký CSS soubor a přidat vlastní styly pro tvou webovou stránku. Vytvoř nový adresář s názvem `css` uvnitř adresáře `static`. Vytvoř nový soubor s názvem `blog.css` uvnitř tohoto adresáře `css`. Připraveno? -Nepůjdeme příliš hluboko do tématu přizpůsobení webu a učení o CSS, protože je to docela snadné a můžeš se o tom naučit více sama po tomto workshopu. Opravdu můžeme doporučit [Codeacademy HTML & CSS kurz][2], kde se dozvíš vše, co potřebuješ vědět, aby tvoje stránky s CSS vypadaly dobře. + djangogirls + └─── blog + └─── static + └─── css + └─── blog.css + - [2]: https://www.codecademy.com/tracks/web +Čas k napsání nějakého CSS! Otevři soubor `blog/static/css/blog.css` v editoru kódu. -Ale pojďme něco málo udělat. Co třeba změnit barvu našeho záhlaví? Pro interpretaci barev počítače používají speciální kódy. Začínají `#` a následuje 6 písmen (A-F) a číslic (0-9). Kódy barev můžeš najít například zde: http://www.colorpicker.com/. Můžeš také použít [předdefinované barvy][3], `červená/red` a `zelená/green`. +Zde nebudeme zacházet příliš do detailů a učit se CSS nebo jej přizpůsobovat. Pokud se budeš chtít naučit více o CSS, na konci této stránky najdeš doporučení na CSS kurz zdarma. - [3]: http://www.w3schools.com/cssref/css_colornames.asp +Ale pojďme něco málo udělat. Možná bychom mohli změnit barvu našich nadpisů? Pro interpretaci barev, počítače používají speciální kódy. Tyto kódy začínají `#` a následuje 6 písmen(A-F) a číslic(0-9). Například kód pro modrou barvu bude vypadat takto: `#0000FF`. Kódy všech barev můžeš najít například zde: http://www.colorpicker.com/. Můžeš také použít [předdefinované barvy](http://www.w3schools.com/colors/colors_names.asp), `červená/red` a `zelená/green`. V souboru `blog/static/css/blog.css` přidej následující kód: +{% filename %}blog/static/css/blog.css{% endfilename %} + ```css -h1 a { - color: #FCA205; +h1 a, h2 a { + color: #C25100; } -``` -`h1` je CSS selector. To znamená, že budeme aplikovat naše styly na jakýkoliv `a` element uvnitř `h1` (např. když máme v kódu něco jako: `< h1 > odkaz < /a >< / h1 >`). V takovém případě sdělujeme, že barvu elementu měníme na `#FCA205`, což je oranžová. Samozřejmě sem můžeš vložit vlastní barvu! +``` + +`h1` je CSS selector. Toto znamená, že aplikujeme naše styly na každý element `a` uvnitř elementu `h1` , selektor `h2` dělá to samé pro elementy `h2`. Takže když máme něco jako `published: {{ post.published_date }}
-{{ post.text|linebreaksbr }}
-{{ post.text|linebreaksbr }}
+{{ post.text|linebreaksbr }}
+{{ post.text|linebreaksbr }}
+