Практичне веб-поглиблене навчання та безпека на прикладі

за Daisy
Практичне в Інтернеті глибоке навчання та безпека на прикладі Третє видання Шарлотта Харпер 3 липня 2024 року Передмова: Міркування щодо безпеки у створенні програмного забезпечення для Інтернету є важливою частиною плану та виконання будь -якого веб -розробника, а також інженерія прототипу, який є надійним, стабільним та корисним для практичних цілей. DOM (розмітка об'єктів документа), з його реалізацією HTML, JavaScrip Творчість, забезпечуйте простоту використання та функціональності, зображуйте смирення та характер та забезпечуйте простоту використання, а також зручність та важливі послуги, які всі привабливі для середнього Джо, кінцевого користувача, який прагне вбити час або щось зробити в Інтернеті, Зазвичай на пристрої смартфона сенсорного екрану. Більшість людей навіть не знали, з чого почати, коли хочуть створити веб -сайтСкретч, вони, як правило, починаються на веб -сайті іншої людини та створюють щось обмежене у функціональності, надійності, простоті використання та особливо творчості, коли вони могли мати у своєму розпорядженні всі останні потужні інструменти, щоб побудувати щось корисне, не витрачаючи часу на натискання кнопок , особливо витрачаючи гроші на оплату дорогих підписки на програмне забезпечення, які мало хто хотів використовувати, враховуючи, що обмеження в просторі використання та гнучкості. Якщо у вас є кілька хвилин, щоб прочитати цю книгу і дізнатися, чого я хочу навчити вас, або навіть особисто поговорити зі мною про ваші цілі та отримати певні вказівки в правильному напрямку, і мотивовані навчитися кодувати та писати власне програмне забезпечення , Візьміть цю книгу додому і відкладіть деякий час, щоб навчитися створювати наступний впливовий, потужний, впорядкований та важливий веб -додаток, веб -сайт, який все є на вас і робить саме те, що ви хочете, і відповідає потребам вашої аудиторії. Про мене: Я розробник програмного забезпеченняДіапазон досвіду в C/C ++, Java, Python, HTML, CSS та JavaScript. Я будую веб -сайти, які люди хочуть користуватися, хочуть відвідати і навіть пристрастився до використання просто для того, щоб дізнатися, відтворити та вбивати час, а головне, я продаю програмне забезпечення. Якщо у вас було уявлення про те, як ви хотіли, щоб веб -сайт виглядав і функціонував, ви готові підтримати мене, щоб я міг задовольнити власні потреби, поки я задовольняю ваші, і ви готові покрити витрати на запуску веб -сайту самостійно, Я б створив вам наступний YouTube, Tiktok, Twitter, Google, або навіть високотехнологічний додаток для безпеки лише ви можете отримати доступ. Замість того, щоб намагатися продати вам свій час, я намагаюся купити ваш: я хочу поговорити з вами, щоб створити програму (веб -сайт) сам з такою існує інформація, і навчити вас, що вам потрібно, щоб бути незалежним розробником програмного забезпечення, Підприємець, що веде успішну кар'єру в будь -якій галузі, яку ви бажаєте. І дозвольте мені бути зрозумілим, освіта, яку я даю вам, буде неофіційною. Ви могли б піти до школи і дізнатися все це за допомогоюОфіційна освіта, або навіть прочитайте цю книгу в школі, виконайте свої завдання та забирайте велику справу від вашої освіти, але я офіційно не поставлю вас на гаряче місце і попрошу вас виконати завдання. Я не твій професор, ти можеш подумати про мене, як про друга, який хоче спрямувати тебе до кар’єри, керованої вашим особистим успіхом. І я також не продаю вам успіх, вам потрібно буде купувати його у свій час. Навчання коду має круту криву навчання і ніколи не було легким або навіть не було. Вам потрібно працювати так сильно, як можливо, і продовжувати намагатися провалитись і спробувати ще раз, навіть коли ви розчаровані, щоб вивчити та створити програми самостійно. Це в природі самого коду. Код працює компілятором, який призначений для надання повідомлень про помилки програміста, і вони навчать вас кодувати, навіть якщо ви просто скопіюєте помилку у свою пошукову систему та читаєте приклади інших людей. І я мушу сказати, що вам не потрібно бути надзвичайно багатим, розумним,Есфули або навіть деталі, орієнтовані або організовані для створення програми. Комп'ютер піклується про цю організацію за вас. Вам просто потрібно наполягати на спробах та помилках, підтримувати фокус і наполегливо працювати над тим, що ви робите, і у вас буде дуже успішна кар’єра в цілому того, що робите. Хто я: Я усвідомлюю, що останній розділ був більше про навчання та ваші шляхи з цієї книги. Хто я саме? Це складне питання. Я сам про це незрозумілий, оскільки я страждаю від медичних станів, які можуть ускладнити мені навіть кодувати або писати цю книгу, при цьому представляючи проблеми з соціалізацією та питаннями ідентичності, які ускладнюють моє життя, коли справа доходить до представлення себе . Коротше кажучи, якщо ви читаєте цю книгу, ви привезли її додому, тому що ви пролетіли через неї і подумали, що це корисно, або навіть якщо ви просто прочитали це далеко, для вас я схожа людина, яка хоче бачити, як ви досягаєте успіху все, що ти робиш. Я сам інженер,Розробник та студент, і я пишу цю книгу для інших студентів, які хочуть полегшити своє життя, маючи посібник із програмного забезпечення, яке їм потрібно полегшити своє життя, наводячи приклади, щоб скопіювати, що підходять разом, як велика головоломка в роботу , Корисний, великий, функціональний, згуртований та залучений додаток, який може досягти успіху незалежно від лінійки бізнесу. Багато в чому це я роблю: я будую програми, щоб допомогти собі та іншим людям досягти успіху. Я також автор, хоча це моя перша публікація, яку я маю намір завершити, щоб скласти своє портфоліо в корисний документ, а також художник. Я визнаю це тобі, я начебто дивна людина. Я не ідеальний, я керував законом, навіть змусив мене залишити коледжі та університетів і залишити держави, щоб спробувати зробити собі ім'я з більшим успіхом. Я за народженням жінка, я ношу макіяж, сфотографую себе, ношу сукні та інший жіночий одяг, і я залишаюсь усвідомленим якЖіноча за своєю природою. У мене були проблеми з іншими людьми в минулому, які призводять до боротьби з написанням та створенням WebApps, і я перепрошую, що мені не вдалося швидше дістати цю книгу в руки: вам це було потрібно. Ви захочете прочитати і написати код, схожий на мій, і працює як моє, і робить те саме, але ще краще, бо якщо ви можете дозволити собі придбати цю книгу замість того Для цього у вас є ресурси, необхідні для успіху у своєму житті. У мене були всілякі проблеми з ростом сім'ї, станами здоров'я, лікарями, засобами масової інформації та законом, і мій код глибоко відображає боротьбу, яка є фемінізмом та жіночою природою у розділеному та розчарованому світі. Однак ця книга - це те, про що я глибоко дбаю, моя дитина, моє портфоліо та засоби для існування, тому я ціную ваш розгляд, коли ви візьмете текст додому і ретельно порите над нею, щоб навчитися у мене. Будь ласка, майте на увазі, що я ніЕкт, у цій книзі будуть помилки, перегляди та нові видання, і вам потрібно буде подумати з вашим логічним мозком якнайкраще, щоб мати успішний досвід мого написання. Крім того, зрозумійте, що я маю на увазі для вас, навіть коли ви стикаєтесь з викликами під час написання. Подумайте про це так: Коли ви можете просто взяти напрокат комп'ютерну систему, щоб зробити все, що можна уявити в цифровому просторі, зберігати всю інформацію, з якою ви стикаєтесь, #$%! Yze і організуйте її, і зрозумієте, ви будете Неминуче стикається з труднощами з інформацією, яку ви приймаєте та навіть публікуєте. Я вам це кажу, бо стикаюся з тими ж труднощами. Використовуйте цю книгу на власний ризик, працюйте зі своєю спільнотою та спільнотами, доступними для вас, щоб створити програмне забезпечення в безпечній обстановці, і не сприймайте речі особисто, коли ви не зможете або навіть не вдаєтесь неправильно: ось так я дістався так далеко і чому я можу принести вам цей текст і допомогти вам досягти успіху, не розходячись на шляху божевілляAves Me Roos, розірваний і побив, поки я стикаюся з звичайними проблемами, які кожен робить у глобальному масштабі завдяки паралелістичному глобальному масштабі мережі, на якій ми будемо працювати, Інтернет. Ви, можливо, не дуже знайомі з тим, ким я є лише з кількома словами, але я закликаю вас читати далі, ви познайомитесь з мною, коли продовжуєте читати та розуміти мене, будуючи власні проекти, щоб завершити свою роботу. Не буде домашнього завдання з цією книгою, доки ваші професори чи викладачі не призначають вам, але я дуже рекомендую вам створити портфоліо проектів самостійно, як ви читаєте, а також проект Capstone, що демонструє, як ви можете Застосовуйте те, що ви дізналися. Мій проект Capstone - це основа для більшості того, що ви прочитаєте в цій книзі, оскільки він включає код з моїх попередніх проектів, код, який я створив, і навчився писати методично вручну, а також широкий спектр ідей та порад, які допомогли мені досягти того моменту, коли я можу скрутити просту програму, якаПовністю представлений і виглядає та поводиться як популярний додаток, який ви можете побачити, як ваш друг чи сім'я використовує в Інтернеті, рекламується до вас чи в новинах. Що таке книга: Ця книга - це підручник за прикладом. Тут ви можете знайти код, інструкції щодо того, як навчитися коду, інформація про код налагодження та виправлення помилок, кроки усунення несправностей, інструкції щодо створення резервного копіювання та збереження коду, повторного розгортання, якщо хтось порушує ваш код, захищає ваш код, розгортання Ваш код, створюйте інтерактивні веб -сайти, які розважають, залучають та звикають, і ви отримаєте відчуття того, хто я, чому це важливо, і як зобразити себе, імідж свого додатка та компанії, а також програмне забезпечення, яке ви будуєте У абсолютному найкращому світлі, щоб бути найбільш привабливим для ваших кінцевих користувачів, відвідувачів вашого веб -сайту. У цій книзі я продемонструю ряд прикладів дизайну програмного забезпечення з акцентом на Інтернет як платформу, а також безпеку. Ми ініціюємо досвід навчання, будуючи базовийOject за допомогою оболонки Unix, з функціями резервного копіювання та сценаріїв. Потім ми розглянемо базовий веб -сайт блогу, оновіть наш блог за допомогою функцій фото та відео, а також використовувати ці функції для використання рішень безпеки за допомогою безкоштовного програмного забезпечення та захищає наш сервер за допомогою модуля аутентифікації, що підключається (PAM). Потім ми розглянемо обробку та обробку файлів, вивчення редагування відео, пожертвування голосу, сканування штрих -коду та розпізнавання оптичного характеру серед інших понять. По дорозі ми розглянемо API, які допоможуть нам зробити наше програмне забезпечення більш корисним та безпечним, з безкоштовними та платними варіантами. По дорозі ми вивчимо інструменти для фізичної безпеки та войовничих виробів, такі як вогнепальна зброя та боєприпаси, що проектують та виготовляють, включаючи дизайн ствола та ретранслятора, дизайн башточок та безпілотників та інші принципи, які ми інтегруємо з нашим програмним забезпеченням у існуючій мережі, щоб захистити наше програмне забезпечення і продемонструвати самооборону та стійкість. Ми зробимо перерви на шляху до побудови ігор, 2D та 3DДвигуни, що надають, і працюють із вбудованим обладнанням у прикладах дослідження базового розміру програмного забезпечення та електронного вібраційного масажера, що відливаються в силіконовому гумі відповідно. Попутно ми також будемо використовувати вже доступні рішення машинного навчання, щоб краще забезпечити наше програмне забезпечення. Ми також використовуватимемо інструменти для акцій, доступні для Інтернету, щоб впорядкувати та забезпечити процес. Ця книга - це посібник з вашого успіху у створенні веб -додатку та інтеграції її з професійною мережею комп'ютерних та вбудованих механічних систем, а в цілому - посібником з будівництва програмного забезпечення та вбудованого обладнання без фонового знання чи попереднього досвіду. Що це за книга: Якщо ви дійсно хочете мати веб -сайт, ви можете просто налаштувати простий магазин і продати те, що вам потрібно, опублікувати блог, опублікувати фотографії чи відео чи іншим чином, не пишучи жодного рядка коду. Ця книга - це не така. Ця книга навчить вас будувати програмне забезпечення, яке є більш корисним, повністюЗапропоноване, функціональне та безпечне, ніж будь -яке програмне забезпечення, яке ви вже можете знайти, оскільки воно розгортає останнє програмне забезпечення, яке все ще є прототипами, може бути дорогим для роботи в масштабах, які працюють старші компанії, і не звертаються до зворотних, заплутаних компаній, створених Заробляйте гроші на людей, які насправді нічого не роблять. Якщо ви уважно дотримуєтесь цієї книги, ви хочете написати код, код дослідження, створити власні програми, і ви заробляєте гроші з того, що робите. Я зароблю гроші з цієї книги навіть на ранніх стадіях, оскільки вона містить інформацію, яку люди потребують і хочуть читати, і вже купують, коли вони купують або використовують мої програми. Ця книга не створить для вас додаток, але вона буде вказувати вам у правильному напрямку та озброїть вам потрібні інструменти та навички та поради, які сприятимуть вашому власному успіху в створенні програмного забезпечення для Інтернету з кожним рядком код, який вам потрібно буде написати як приклад, готовий до складання разом у програмне забезпечення, яке ви та ваші прихильники, гості, клієнтура,Ріанди, сім'я, відвідувачі, підрядники та люди Інтернету хочуть використовувати та підтримувати. Що ви дізнаєтесь: Ця книга навчить вас будувати та продавати програмне забезпечення, дійсно функціональне, корисне програмне забезпечення, медіа -запис, такі функції безпеки, такі як розпізнавання обличчя, сканування штрих -коду з читабельним машинами, веб -API для аутентифікації, запису та надання відео та фотографій та обміну повідомленнями Bluetooth і поблизу поля (NFC) спілкування. Ця книга навчить вас використовувати мережевий комп'ютер, зосередившись на Debian Linux, як створити код Bash, щоб зробити встановлення та резервне копіювання вашого програмного забезпечення безшовним, автоматизованим вітерцем, як створити код Python як бекенд для обслуговування динамічних повідомлень, стилю Речі красиво використовують стилі CSS з Bootstrap, увімкнути входи користувачів та інтерактивність за допомогою мережевих пристроїв, створити інтерактивні медіа та мережу з іншими веб -сайтами, щоб запропонувати функції безпеки, такі як текстові повідомлення для перевірки чи інших цілей, сканування ідентифікаторів, модеру зображення та відео, даніРансакції, щоб захистити ваше програмне забезпечення, обробка платежів, торгівля криптовалютами, асинхронні завдання тощо. Ви дізнаєтесь, як будувати власні пристрої Bluetooth, з акумуляторами, зарядними пристроями, мікроконтролами, ланцюгами, двигунами та датчиками, використовуючи припою, дріт та 3D -надруковані, а також литі матеріали. Я продемонструватиму основних директорів 3D -дизайну, застосованих до виробництва добавок та інструментів та виготовлення штампів, тому ви зможете виготовити власні вбудовані, апаратні пристрої з інтегрованими батареями, зарядними пристроями, електронними схемами та функціональними виходами. і налагодити їх за допомогою Bluetooth та Інтернету. Зокрема, ми розглянемо два тематичні дослідження, вібруючий масажер та домашню вогнепальну зброю, обидва запрограмовані в OpenScad, який доступний як графічний інтерфейс або утиліта командного рядка і може бути інтегрована в Інтернет для більш швидких результатів. Ви дізнаєтесь, як будувати та розгорнути веб -сайт з нуля без попереднього досвіду, робити його функціональним, безпечним, красивим, кориснимПрактично практично. Ви дізнаєтесь, як використовувати машинне навчання та комп'ютерне бачення, щоб зробити сайт захищеним та більш практичним, записуйте відео та аудіо з вашого веб -сайту, пожертвуйте голос, створюйте музику та модулюйте аудіо, щоб створити корисні зразки та як пробити шум Використання інших веб -сайтів для створення найкращої можливої мережі веб -сайтів, яку ви можете зв’язати безпосередньо з вашим, щоб поділитися всією корисною інформацією, яку ви можете запропонувати, і ще важливіше принести людей до вашого програмного забезпечення та бізнесу. Ця книга буде зосереджена найбільше на медіа, безпеці та машинному навчанні, які є основними трьома компонентами, які допоможуть вам створити корисне програмне забезпечення для Інтернету, залучаючи правильних користувачів та відключили неправильні способи, що є реалістичним, практичним, Руки та залучення, а також автоматичний, і міцний. Ця книга вчить Unix, зокрема Debian (Ubuntu), Bash Shell, Python, HTML, CSS, JavaScript та ряд корисних програмних пакетів дляn, як запити, а також корисне програмне забезпечення Bash, як Git та FFMPEG. Я також навчу вас автоматично торгувати криптовалютою та приймати платежі в криптовалюті або з регулярних дебетових карток, навіть виплачуючи відвідувачам частку вашого доходу, якщо ви вирішите це зробити. Я навчу вас заробляти гроші на своєму веб -сайті за допомогою реклами, як підготувати свою програму для пошукових систем і зробити його швидким, займає перше рейтинг за тим, що ваші клієнти будуть шукати, щоб знайти вас, і рейтинг стільки поширених пошуки якомога більше. Я навчу вас продавати своє програмне забезпечення, рекламувати його, звертатися до клієнтів, які шукають ваші послуги, та зробіть ім’я в Інтернеті через шляхи, які вже існують, є недорогими та добре працюють. Я навчу вас, як зберегти свої дані на хмарних комп'ютерах, які працюють для вас, і дешево зберегти ваші дані, як планувати та створити веб -сайт, який робить те, що хочуть ваші користувачі та що ви хочете, і як тримати своїх користувачівВзявши свій сайт, натисніть на їхні телефони з сповіщеннями, електронною поштою, текстовими повідомленнями, телефонними дзвінками та більшою кількістю шляхів, щоб повернути своїх користувачів на ваш веб -сайт у вашому розпорядженні за натисканням кнопки, захищеної лише від вас. Ця книга буде зосереджена на практичній публікації та розповсюдженню ЗМІ у великих кількостях, від тексту до фотографій до відео до аудіо, справляючи гарне враження для кінцевих користувачів (вашої клієнтури) та продавати себе будь -яким способом, щоб створити, щоб створити Веб -сайт, додаток, який є представником для вас і ви тільки, і змушує вас, ваше програмне забезпечення та ваша компанія виглядають добре найкращим чином. Ви також дізнаєтесь у мене кілька порад та рекомендацій, від поради щодо кодування, практичної марнославства, таких як макіяж та фотографія, моделювання та акторська майстерність тощо для вас, розповсюджуючи стільки вмісту, скільки вам потрібно в здоровому балансі платформ, щоб принести вашe до плодів, не маючи більше зусиль, роботи чи грошей, ніж це необхідно. Ця книга називається «Практичне в Інтернеті глибоке навчання та безпека за прикладом» з причини: вона стосується навчання коду, зокрема для Інтернету, зокрема з акцентом на безпеку, з практичної точки зору, з прикладами робочого коду, який служить Практичні цілі, викладені в тексті. Навчальний компонент цього тексту також охоплює машинне навчання, код, який я покажу вам, як запустити в Інтернеті, яка буде обробляти комп'ютерне зору, розпізнавання обличчя, модерацію зображення та відео, вдосконалення зображень, вдосконалення роздільної здатності, підписи зображень та інші завдання Показники прогнозування отримані із зображень, таких як природа зображення як справжнє, комп'ютерне зображення, або оптична копія (фотографія зображення або друкована фотографія). Машинне навчання є дуже важливим, коли мова йде про безпеку веб -безпеки та програмного забезпечення, оскільки воно може виконувати завдання, які інакше були неможливими. Ваш комп’ютерУвійдіть за допомогою парольного коду, але може бути безпечніше використовувати його, якщо він входить у вас обличчям. Ви можете зробити серверний комп'ютер таким безпечним, комп'ютером, який зазвичай просить вас про ім’я користувача та пароль і ввійти у вас, можливо, з маркером підтвердження для кожного нового входу або нової IP -адреси, але якщо ви будуєте великі масштаби, простий у Використання, принципово безпечне та потужне програмне забезпечення, цього може бути достатньо. Занадто уважно прив’язати своє програмне забезпечення до чужого програмного забезпечення, наприклад, послуги електронної пошти або послуги текстових повідомлень, недостатньо, щоб зробити ваше програмне забезпечення безпечним або чиїсь (будь -який сайт, який ви використовуєте). Кожен, хто будує програмне забезпечення, яке бездоганно захищає, має певне розуміння того, що це означає. Програмне забезпечення за своєю суттю невпевнено, оскільки пристрої та облікові записи, які ми використовуємо для доступу до нього, не завжди є в нашому розпорядженні, вони можуть бути в руках тих, хто має намір для програмного забезпечення, і тому можуть становити ризик для самого програмного забезпечення. Це щось у фокусі цієї книги. Мережевий комп'ютер за замовчуваннямЗабезпечений довгим ключовим маркером, який називається та SSH або захищеним ключем оболонки, і в іншому випадку найкраще забезпечений веб -сервером, оскільки веб -сервер забезпечує відкритий доступ, а також сучасні інструменти безпеки, що працюють на самому сервері. Веб -сервер має доступ до веб -браузера користувача, який, мабуть, є найпотужнішою частиною пристрою користувача, оскільки це місце, де користувач може отримати доступ до мережевого програмного забезпечення. Цей інструментарій може відображати текст, веб -сторінки, які ви бачите, а також можуть записувати зображення, аудіо та відео (наприклад, фотографія обличчя або ідентифікатора стану), може читати та записувати на радіопристрої Bluetooth, і може читати та записувати в поле поля Теги TransPonder, недорогі ключові картки, FOBS, наклейки, кільця та навіть чіп -імплантати з унікальними серійними номерами, які можна читати та записати за допомогою даних, створених та підтверджених веб -сервером, прив’язаним до веб -сайту. Використовуючи всі інструменти у вашому розпорядженні, за допомогою цієї книги ви оснащете себе знаннями, щоб створити безпечний веб -сайт та загалом aКомп'ютерна система URE, яка працює для вас, робить ваші торги, виглядає і відчуває себе правильно. З чого почати: Ви можете пропустити повз розділ, я починаю цю книгу або будь -який розділ, до того, що вам потрібно, особливо якщо у вас є досвід кодування до або будь -якого з вищезгаданих інструментів, які я детально описую в цій книзі як а також документування випадків використання та практичних прикладів. Якщо у вас немає досвіду написання коду, я настійно рекомендую прочитати всю цю книгу, і особливо рекомендую прочитати попередні розділи, щоб переконатися, що ця книга підходить саме вам. Якщо ця книга не підходить для вас, подумайте про те Вчитель чи інші вчителі зробили переді мною. Почніть, де ви хочете, кожна частина цієї книги буде корисною, якщо ви маєте намір створити кориснуPP, і вважайте, що найкращі програми побудовані з урахуванням кінцевого користувача: знайте свого клієнта. Тепер ви знаєте мене, знаєте цю книгу, і ви готові розпочати. Для початку візьміть комп'ютер (навіть найдешевший ноутбук із магазину коробки, Amazon або старий робочий стіл працює, і налаштуйте його таким чином, що працює для вас. Як читати цю книгу: Виділений текст, позначає, що текст належить до командного рядка, де ви напишете код, який ви запускаєте. Командний рядок сильно орієнтований на клавіатуру і вимагає мало клацання, прискорюючи свій робочий процес та полегшуючи вам речі. Початок роботи: Давайте зануримось. Ми почнемо з побудови коду на місцевій машині та почнемо без створення веб -сайту, підключеного до Інтернету. Це безпечніше, щоб почати, нічого не коштує, і вам легко. Залежно від вашої операційної системи, потрапляння в оболонку баш буде трохи інакше. Для ОС Mac я рекомендую встановити віртуальну машину в цей момент, оскільки ви отримаєте найбільш сумісністьВіртуальна машина. Різні постачальники, такі як VirtualBox та Paralells, можуть запустити для вас віртуальну машину, хоча також можна встановити Ubuntu безпосередньо на машині, якщо ви вважаєте за краще використовувати рідне середовище, яке рекомендується для створення швидкого, обтічного досвіду. Якщо ви використовуєте Linux або Windows, які я рекомендую, створити проект це повинно бути досить просто. Відкрийте термінал, відрегулюйте розмір, як вважаєте за потрібне, і почніть наступний крок 2. Якщо ви використовуєте Windows, будь ласка, дотримуйтесь кроку 1. Крок 1: - Тільки користувачі Windows У Windows відкрийте командний рядок як адміністратор та введіть WSL - ВІДПОВІДЬ Крок 2: - Продовжуйте тут, або пропустіть крок 1 до тут, якщо ви не використовуєте Windows У відкритому терміналі (залежно від вашої ОС, що називається Ubuntu у Windows, термінал у Mac або Linux, або подібне ім'я), почніть із створення проекту. Ми робимо це за допомогою команди MKDIR, яка створює каталог. Якщо вам потрібно створити каталог для зберігання проекту, який рекомендується, використовуйтеКоманда CD для зміни каталогу та та CD/PATH/TO/каталог - Шлях - це папки (файли), які передують каталогу призначення, ваш шлях за замовчуванням - ~ або/домашнє/користувача (де ім'я користувача - ваше ім'я користувача). Щоб змінити каталог за замовчуванням, введіть CD або CD ~ Приклад MKDIR - Замініть "Приклад" назвою каталогу Тепер у вас є робочий каталог для вашого проекту. Будучи так важливо зберегти цей каталог, якщо вам потрібно перейти на іншу машину або розгорнути код, який ви пишете, щоб він був готовий до Інтернету, ми створимо сценарій, щоб створити резервну копію вашого каталогу в найближчі кілька кроків. Але побудова сценарію потребує трохи коду, і код повинен бути автоматизований, щоб бути максимально корисним. Тож давайте побудуємо сценарій, щоб спочатку побудувати сценарії. Почнемо зі створення сценарію та зробимо його виконуваним. Ми використовуємо для цього sudo, chmod та дотик, і зателефонуємо до сценарію
sudo touch /usr/bin/ascript
sudo chmod a+x /usr/bin/ascript
sudo nano /usr/bin/ascript
Тепер ми створили сценарій, зробили його виконуваним і готовим редагувати його. Nano - це текстовий редактор, який дозволить вам редагувати текст без натискання, що набагато простіше, ніж використання графічного інтерфейсу користувача. Щоб відредагувати файл з Nano, використовуйте Nano, а потім шлях до файлу. Щоб зробити сценарій, який робить сценарій, він досить схожий на те, щоб зробити наш сценарій в першу чергу. Ми використовуємо той самий код, що і вище, замінюючи назву сценарію, "ASCRIPT" параметром аргументу, $ 1. Це дозволяє нам зателефонувати до сценарію, ввівши просто Sudo Ascript Newscript, і в цей момент ми можемо створити будь -який новий сценарій, замінивши "Newscript" на ім'я вашого сценарію. Код у нано повинен виглядати:
sudo touch /usr/bin/$1
sudo chmod a+x /usr/bin/$1
sudo nano /usr/bin/$1
І щоб закрити Nano, ми можемо утримувати клавішу управління і натиснути X, а потім Y, щоб позначити, що ми зберігаємо файл, і натиснуте на повернення. Тепер замість того, щоб вводити ці три команди для редагування сценарію, ми зможемо ввести Sudo Ascript Ascript, щоб знову редагувати сценарій. Це працює! І будь -який новий сценарій можна легко запустити, викликаючи його в оболонку. Давайте збережемо нашу роботу зараз: Давайте напишемо сценарій резервного копіювання, щоб зберегти наш новий сценарій, а потім створили резервну копію в нашому каталозі проекту, а також створимо резервну копію сценарію резервного копіювання.
sudo ascript backup
Тепер, в Нано:
sudo cp /usr/bin/backup /path/to/directory/
sudo cp /usr/bin/ascript /path/to/directory/
Де/шлях/до/каталог - це шлях до проекту, який ви створили за допомогою MKDIR. Пізніше ми дізнаємось, як копіювати подібні повторні шляхи за допомогою циклу та списку, що менше коду, але поки що давайте простіше і матимемо кілька рядків. Щоб запустити цей сценарій та створити резервну копію коду, збережіть файл у Nano за допомогою Control+x, y та поверніться, і введіть нижче у свою оболонку
backup
Якщо вам взагалі буде запропоновано пароль під час читання цієї книги та слідкуючи за оболонкою, будь ласка, введіть пароль користувача правильно, у вас будуть три спроби, перш ніж вам потрібно повторно запустити команду. Ви можете використовувати стрілки вгору та вниз, щоб повторно їх та редагувати, якщо вам потрібно запустити що -небудь двічі. Прості натискання вгору та вниз, щоб вибрати команду, перш ніж редагувати команду правою, лівою стрілкою та видалити клавішу, а також клавіатуру, і запустити її з поверненням.
Вітаємо! Вам вдалося створити дивовижний сценарій резервного копіювання, який підкріплює два важливі сценарії оболонки у вашому робочому каталозі. Ми можемо перемістити речі пізніше, коли проект стає більшим, але це вже працює. Давайте перейдемо до резервного копіювання у хмарі, ми використаємо для цього Github (хоча для резервного копіювання є численні інші рішення GIT, вони все приблизно однакові.) Git - це програмне забезпечення для контролю Verision, яке дозволяє створити резервні копії до вашого Програмне забезпечення, коли ви робите їх на сервер, покиТакож дозволяючи завантажувати цілі копії вашого програмного забезпечення за паролем або ключем. Це сприяє збереженню вашого програмного забезпечення, тим більше, що ми переходимо до захищених екземплярів Linux, які іноді розбиваються, коли один рядок коду не виходить з ладу, залишаючи вас заблокованими, поки ваш код може не бути резервним копією, якщо ви не отримаєте шансів повернути підтримку Вгору автоматично, що ми будемо висвітлювати.
Якщо ви вже не використовуєте віртуальну машину Ubuntu на даний момент, я рекомендую використовувати віртуальну машину Ubuntu на даний момент, оскільки це полегшить ваше життя при встановленні всіх пакетів, необхідних для створення робочого веб -сайту та заробити глибоке навчання операції на вашому комп’ютері. Ми перенесемо код на веб -сервер найближчим часом, але ми хочемо переконатися, що за нашим веб -сервером є щонайменше кілька шарів безпеки, стійкі до фішингу, і використовуємо ряд пакетів Linux для цього це. Якщо ви все ще хочете використовувати ОС Mac, ви можете шукати та встановитиe необхідні пакети в Інтернеті, але для кожної упаковки, можливо, не буде альтернативи для кожної книги чи серії.
Додамо кілька команд, щоб здійснити нашу роботу за допомогою сценарію резервного копіювання, запустивши команду sudo Ascript
# ...
git add –all
git commit -m “backup”
git push -u origin master
Ще раз керувати X, щоб зберегти.
Тепер нам потрібно зробити одноразову конфігурацію для цього проекту. Оскільки це незабаром буде проектом GIT, нам не потрібно вводити кожну команду щоразу, коли ми розгортаємося із сховища GIT, але ми отримаємо повісити це, коли ми пишемо наші сценарії розгортання. Для початку давайте переконайтеся, що ми знаходимося в правильному каталозі та ініціалізуємо сховище GIT та генеруємо клавіші SSH.
cd /path/to/directory
git init
git branch -m master
ssh-keygen
Після того, як ми вводимо SSH-Keygen, новий ключ повинен бути збережений у домашній папці під папкою, яка називається .ssh. Це називається id_rsa.pub. Давайте знайдемо цей ключ і скопіюємо його. Щоб побачити,
cd ~
cat .ssh/id_rsa.pub
Скопіюйте текст, який повертається останньою командою, і створіть обліковий запис у свого постачальника GIT (в ідеалі Github), перш ніж додати ключ SSH до свого облікового запису. Після того, як у вас є обліковий запис, натисніть на верхнє праве меню та введіть налаштування, перш ніж додати клавішу SSH в клавіші SSH та GPG під доступ у меню. Виберіть Додати клавішу SSH та додайте своє, вставивши його та надавши йому назву, перш ніж зберегти та повернутися до Github, щоб створити новий сховище. Це схоже на інших постачальників GIT, вам потрібно буде прочитати їх документацію. У новій конфігурації сховища дайте своєму сховищі описового імені та вирішити, чи хочете ви його опублікувати, і переконайтеся, що ще немає файлів для включення. Після створення сховища скопіюйте клон за допомогою URL -адреси SSH та вставте його в наступну команду.
git remote add git://… (your remote URL)
Тепер ви можете повернутися до свого сховища за допомогою CD, ви будете знайомі з цим. Спробуйте свій резервний сценарій зараз із резервною копією
Чудово! Тепер ми можемо дійсно отримати кодування. Давайте встановимо Джанго тепер, коли ми добре зрозуміємо Баш і Гіт. Django дозволить нам автоматично створити резервну копію нашого програмного забезпечення, Bash може це зробити теж, але Django повинен мати більш простішу безпечну реалізацію (його можна відключити та налаштувати легше).
Для встановлення програмного забезпечення в Ubuntu ми будемо використовувати команду Sudo Apt-get. По -перше, давайте оновимо та оновимо програмне забезпечення, яке ми вже мали. Це можна зробити за допомогою оновлення Sudo Apt-get та оновлення sudo apt-get -y. Далі, давайте встановимо Python та наше віртуальне середовище, будинок нашого коду, з такою командою: sudo apt-get Встановити python-is-python3 python3-venv
Це все, що вам потрібно, щоб піти з Django з точки зору встановлення програмного забезпечення в екземплярі Ubuntu. Для Windows та Linux це має бути досить просто, але для Mac ви можете встановити віртуальну машину таLinux на ньому за допомогою безкоштовного або платного віртуального середовища, наприклад, VirtualBox або Paralells Desktop та відтворити вищезазначені кроки, щоб налаштувати середовище Ubuntu. Ubuntu є критичним у цьому випадку, оскільки це програмне забезпечення, яке працює веб -сайти, і дозволяє їм розміщувати веб -сайти з усім вищезгаданим програмним забезпеченням.
Давайте копаємося в Джанго.
У нашому каталозі знову, з
python -m venv venv # Створює віртуальне середовище, де зберігається код
source venv/bin/activate # Активує віртуальне середовище
pip install Django
django-admin startproject mysite . # Там, де MySite - це проект, який я починаю в своєму поточному каталозі.
Django просто запускає нас, оскільки Django розміщує веб -сервер і робить все, що потрібно, щоб отримати базовий місцевий веб -сайт. Тепер, коли у нас встановлено Django, давайте трохи редагуємо налаштування, щоб він працював, як нам потрібно. По -перше, давайте створимо новий додаток
python manage.py startapp feed
Ви помітите, що перший додаток називається Feed. Додаток слід називати все, що вам подобається, і ми створимо нові програми, але назва кожного програми повинна бути послідовною щоразу, коли додаток посилається на код. Щоб додати новий додаток, ми завжди будемо редагувати settings.py в іншому каталозі, який створив додаток, названий в додатку StartProject, Aufterfer. Використовуючи нано,
nano app/settings.py
У налаштуваннях знайдіть встановлений_apps та розділіть [] на 3 рядки. Використовуючи чотири простори на порожній центральній лінії, додайте "подачу" або назву вашого додатка. Цей розділ налаштувань.py повинен виглядати:
INSTALLED_APPS = [
'feed',
]
Перш ніж забути, давайте перевіримо, що Джанго працює. Використовуючи команду Python Manage.py runserver 0.0.0.0:8000, ми можемо запустити сервер, а потім перейти у веб -браузер на комп’ютері, запускаючи код до http: // localhost: 8000 і див. Приклад веб -сторінки (вона працює!) Киньте сервер за допомогою управління C, те саме, що і будь -яка інша команда.
Тепер давайте розберемося, щоб написати якийсь код Python. У Джанго є три основні компоненти, усі вони повністю працюють за кодом. Компоненти називаються моделлю, переглядом та шаблоном, і кожен знаходиться на більш високому та нижньому рівні відповідно до доставки веб -сторінки користувачеві.
Модель - це код, який зберігає інформацію в базі даних для пошуку, сортування та візуалізації.
Вид вирішує, як модель надається, маніпулюється та модифіковано, майже кожен вигляд буде використовувати модель безпосередньо.
Шаблон - це HTML -код з деякими додатковими дзвонами та свистами, які називаються мовою шаблону. Шаблон надається видом, де він заповнений кодом Python іТакі контекст, як моделі та інформація (Usuall Strings та цілі числа) з точки зору.
У Джанго є й інші компоненти, включаючи, але не обмежуючись ними:
Налаштування, які налаштовують додаток, як ми говорили.
URL -адреси, які є шаблоном, до яких користувач дотримується, щоб отримати доступ до конкретних частин веб -програми.
Форми, які визначають, як інформація, яка надсилається на сервер, обробляється та надається до бази даних, а також користувачеві. Це основа інформації про обробку на стороні сервера і може приймати будь -який тип інформації, яку зберігає комп'ютер, особливо текстові рядки, цифри та справжні/помилкові булеви (зазвичай прапорці).
Шаблони, які є HTML -кодом та мовою шаблону, та мостоять розрив між Python та HTML, що означає інформацію про Python, може бути виконаний як HTML -код, до якого кожен може отримати доступ, і може забезпечити веб -сайт з обмеженим доступом, одночасно робить код Python доступним для Інтернету та корисним для різних цілей на віддаленому пристрої, який ніeed бути біля сервера.
Статичні файли, які зазвичай є JavaScript, і це бібліотеки, які сервер обслуговує і пов'язаний з шаблоном.
Медіа -файли, які сервер обслуговує або проводиться зовні, або просто записується на сервер, перш ніж обробляти та розміщувати на інший сервер (відро) для хостингу.
Середнє програмне забезпечення, яке є кодом, які працюють одночасно, як і кожен погляд, і вважаються "включеними" у погляді.
Контекстні процесори, які обробляють контекст кожного погляду та використовуються для додавання додаткового контексту.
Тести, які підтверджують, що користувач або запит передає певні вимоги до того, як перегляд буде надано.
Споживачі, які диктують, як WebSockets обробляють та реагують на спілкування.
Адміністратор, який використовується для реєстрації моделей, щоб їх можна було детально маніпулювати на сторінці адміністратора Django, де база даних може бути введена через графічний інтерфейс.
Селера, яка визначає асинхронні завдання, частини коду Django можуть розпочатисяНЕПРАВИ ПЕРЕГЛЯДУВАННЯ ПРАВИЛЬНОГО ДО наступного завдання або Рядок коду.
Django може мати багато інших компонентів, про які ми детально обговоримо тут. Існує безліч способів зробити Django більш функціональним, додавши Websockets, які є швидкими, впорядкованими каналами зв'язку, селерою, яка виконує асинхронні завдання, і безліч інших програмного забезпечення для розширення django, особливо у функціях перегляду, де більшість із Код виконується. Функції перегляду є ключовими, оскільки вони зазвичай оголошують кожен фрагмент коду, який є специфічним для конкретної схеми URL -адрес або розділу сервера.
Спочатку давайте вивчимо функції перегляду. Функції перегляду починаються з імпорту, що позначає код, який буде використаний у перегляді, і визначаються за допомогою регулярних визначень функцій або класів. Найпростіші погляди визначаються визначенням функції DEF та повернути httpression з основним шаблоном. Почнемо з визначення основного подання, щоб повернути текст "Hello World". Пам'ятайте, що кожного разу, коли ви додаєтеЗрозуміло, як DEF, якщо, хоча для тощо, вам потрібно буде додати 4 пробіли для кожного з попередніх визначень, які ви хотіли б застосувати до своєї функції. Ми незабаром увійдемо в те, що кожен із цих означає.
З каталогу нашого сайту редагувати файл seed/views.py за допомогою нано та додайте наступні рядки до кінця
from django.http import HttpResponse
def hello(request):
return HttpResponse('hello world')
HTTPRESSONS Django відповідає текстовим рядком, позначеним відкриттям та закриттям ". Кожен раз, коли ви передаєте інформацію на функцію чи клас, наприклад, запит або рядок, вам потрібно буде використовувати дужки (відкриття та закриття).
Це не все, що нам потрібно, щоб побачити наш погляд. Звичайно, ми не розповіли серверу, де саме погляд нам все одно потрібно визначити шлях, за допомогою якого погляд повинен відображати. Почнемо з визначення базового шляху в APP/urls.py, і ми перейдемо до груп шляху пізніше.
У APP/urls.py додайте рядок після операторів імпорту після початку імпорту подання, який ми тільки що створили.
from feed import views as feed_views
Тепер давайте визначимо схему перегляду. Шаблони перегляду мають три компоненти, компонент шляху, який розповідає серверу, де перегляд існує на сервері (шлях URL, який користувач вводить у панель навігації для введення веб -сторінки), компонент перегляду, де вказано перегляд, та a Дружнє ім’я для перегляду, тому легко отримати його шаблон під час роботи з шаблоном, особливо, щоб назва можна було змінити та оновити, якщо необхідно, щоб зробити місце для іншого виду або взяти на себе більш логічне ім'я. Має сенс робити речі таким чином і бути гнучким, оскільки ваша кодова база буде постійно мінливим середовищем, яке потребує гнучкості та імпровізації, щоб бути цінним та легким для роботи. Ось як виглядатиме ваш погляд, ви можете додати це до urlpatterns = [розділ програми/urls.py. Шаблон перегляду визначається трьома описаними вище компонентами, а також функцією, що називається шляхом. Ваші шаблони URL -адрес - це список, тому обов'язково завжди закінчуйте кожен предметз комою, бо це розділяє кожну. Кожен елемент також повинен надходити на новий рядок, ще раз із чотирма пробілами перед ним, як і додаток у Settings.py. Ми визначимо перший компонент перегляду з порожньою функцією рядка, щоб створити вигляд, який працює на кореневому каталозі веб -сервера. Ваші urls.py тепер повинні виглядати як
from feed import views as feed_views
urlpatterns = [
path('', feed_views.hello, name='hello'),
]
Це основа для створення веб -сайту з Django, який є абсолютно статичним. Для того, щоб зробити більш динамічний веб -сайт, де ми можемо почати кешування інформації, як -от зображення, відео, аудіо та інше, нам потрібно буде використовувати моделі, які ми будемо вивчати далі. Поки що перевіримо наш код і запустимо сервер. Щоб перевірити код на помилки, запустіть:
python manage.py check
Якщо є якісь повідомлення про помилки, ви повинні ретельно переглянути зміни, які ви внесли у свій додаток, і побачити, чи є щось, що потрібно виправити, як сторонні або не вистачає місця, додатковий символ, незмінний рядок, будь -який друкарський, будь -який випадково видалений персонаж або щось інше. Читаючи повідомлення про помилку (якщо у вас є), ви повинні мати можливість переглянути шлях до створеного вами файлу або редагування разом із номером рядка, тому перегляньте цей файл і рядок і подивіться, чи можете ви виправити все, що там є . Якщо ви вирішили проблему, запустіть вищевказану команду. Коли ваше програмне забезпечення буде готове до запуску і працює, ви побачите вихід "Перевірка системи не визначила проблем". Тепер ви готові йти. Запустіть сервер із:
python manage.py runserver 0.0.0.0:8000
Тепер відкрийте веб -браузер і перейдіть до http: // localhost: 8000. Ви повинні побачити текст, повернутий у дужках та цитати функції httpresponse у вашому погляді. Це просто основний приклад, але якщо ви зробили це так далеко, ви розумієте основи того, як працюють Linux, Bash, Python та Django. Давайте заглиблюватися в деяке моделювання бази даних та вивчимо потужність класу Python у зберіганні інформації. Потім ми почнемо захоплювати HTML та CSS, перш ніж зробити наш сайт повністю представленим, гнучким та безпечним за допомогою JavaScript та машинного навчання.
Заняття зберігаються в моделях.py вашого додатка. Використовуючи нано, редагувати додаток/моделі.py та додайте новий клас. Клас визначається з визначенням класу і передається суперкласом, від якого він успадковує, у цьому випадку моделі. Модель. Назва класу з'являється після визначення класу, і після використання визначення класу A: (Колон) використовується, перш ніж атрибути та визначення функцій, пов'язані з класом, позначаються нижче. Наш класПотрібен ідентифікатор, який ми можемо використовувати для отримання його та збереження унікальним, а також йому потрібне текстове поле для зберігання певної інформації. Пізніше ми можемо додати часову позначку, файли, булеві (правдиві або помилкові визначення, які можуть допомогти нашому коду прийняти рішення про те, що робити з моделлю, і може бути використаний для її сортування), екземпляр для прив’язки моделі до користувача, зареєстрованого на сервер та багато іншого. Давайте розпакуємо код
from django.db import models # Імпорт, який використовується для визначення нашого класу та його атрибутів
class Post(models.Model): # Визначення нашого класу самого класу
id = models.AutoField(primary_key=True) # Ідентифікатор нашої моделі, автоматично створений ключ, який дозволить нам запитувати модель, зберегти її унікальною і є корисною, коли нам потрібно взаємодіяти з моделлю після її створення.
text = models.TextField(default='') # Атрибут нашого класу, в даному випадку, якийсь текст, за замовчуванням порожній рядок.
Закрийте і збережіть файл, як і раніше, щоб закінчити.
Існує багато інших полів та варіантів, які ми вивчимо, коли ми оновлюємо цей клас у міру розвитку нашої програми, але це основні потреби створення програми для розміщення певного тексту. Однак ця модель не буде працювати поодинці. Як описано раніше, нам знадобиться власний перегляд та спеціальний візерунок URL -адреси, щоб ця модель працювала, і нам також знадобиться форма разом із шаблоном. Давайте спочатку вивчимо форму.
Щоб визначити форму, редагувати додаток/forms.py з нано та додайте наступні рядки. Нам знадобиться два імпорту, наш клас форм, а також модель, яку ми створили (Feed.models.post), визначення класу, подібне до моделі, та поле разом із підкласом під назвою META, який визначатиме модель, що взаємодіє форма з. Форма також може мати функцію ініціалізації, яка налаштовує її на основі інформації у запиті, моделі чи іншим чином, ми вивчимо це пізніше.
Форми моделі настільки корисні, оскільки вони можуть створити модель або також редагувати модель,Тож ми будемо використовувати їх для обох. Давайте визначимо його у формах.py
from django import forms
from feed.models import Post
class PostForm(forms.ModelForm):
text = forms.CharField(widget=forms.Textarea)
class Meta:
model = Post
fields = ('text',)
Це основи того, як виглядає форма та модель. Ця форма моделі може бути використана для інстанції або редагування публікації, зміна тексту, який він містить. Ми розглянемо інтеграцію цієї форми у вигляд далі. По -перше, давайте здійснимо міграцію та мігруємо базу даних, щоб наш код міг взаємодіяти з моделлю, коли вона працює. Для цього запустіть наступні команди:
python manage.py makemigrations
python manage.py migrate
Це займе хвилину, щоб виконати, але як тільки це станеться, це дозволить вам отримати доступ до моделі в переглядах, проміжному програмному забезпеченні чи де -небудь в програмному забезпеченні. Давайте продовжимо, оглядаючи, де ми можемо побачити нашу модель. Редагувати канал/views.py та додайте наступний код, як зазначалося. Вам не потрібно буде додавати нічого після знака #, що код - це коментарі, які використовуються для позначення інформації про код. Ми почнемо з імпорту нашої моделі в переглядах та додаванням до контексту, де ми можемо зробити її в шаблоні як список для дисплея. Далі ми додамо шаблон, де ми можемо зробити форму та модель за допомогою кнопки, щоб створити новий об'єкт на основі моделі та розмістити його на сервер. Це звучить складно, тому давайте просто зробимо крок за кроком. Перш ніж ми закінчимо вигляд, давайте створимо шаблон, який просто робить модель і переконайтеся, що ми можемо її побачити, створивши нову публікацію в оболонці. Ось як виглядати ця думка:
from feed.models import Post
from django.shortcuts import render, redirect
from django.urls import reverse
def feed(request):
posts = Post.objects.all() # Запитайте всі публікації в базі даних досі
return render(request, 'feed/feed.html', {
'posts': posts,
})
Це все виглядає досить просто, поки ми не дістанмось до дна. Візуалізація, значення, повернене функцією замість HTTP -відповіді, як і попередній приклад, завжди приймає запит як перший вхід , і повертає шаблон, визначений у функції. Шаблон буде документом HTML з невеликою мовою під назвою Jinja2, який надає Python інформацію в HTML.
Щоб почати створювати шаблони, зробіть два каталоги в кормі.
mkdir feed/templates
mkdir feed/templates/feed
Далі відредагуйте шаблон у каталозі вище, подача/шаблони/подача та додайте код для цього прикладу. Давайте розглянемо шаблон для цього прикладу.
<!doctype HTML>
<html>
<body>
<legend>Feed</legend>
<hr>
{% for post in posts %}
<p>{{ post.text }}</p>
{% endfor %}
</body>
</html>
Це дуже простий шаблон. Він визначає відкриття та закриття тегів HTML, тег типу документа, тег кузова з назвою легенди, тег перерви, який додає невеликий рядок по екрану, і для циклу, який надає кожну публікацію у списку публікацій як абзац у шаблон. Це все, що потрібно для надання публікацій, але в базі даних ще немає. Давайте створимо деякі з оболонкою. Ми можемо запустити оболонку з manage.py
python manage.py shell
Тепер імпортуємо нашу модель пост
from feed.models import Post
Далі ми створимо просту публікацію з рядком і вийдемо з оболонки. Рядок може бути будь -яким, доки це дійсне текст.
Post.objects.create(text='hello world')
exit()
Нарешті, нам потрібно буде додати схему URL -адреси до нашого каналу. Оскільки наш додаток для каналів буде використовувати кілька URL -адрес, і ми хочемо зберегти розміри файлів невеликими, давайте створимо локальну URLS.PY у нашому додатку для подачі каналу, який виглядає так:
from django.urls import path
from . import views
urlpatterns = [
path('', views.feed, name='feed'),
]
Нам також потрібно буде відредагувати urls.py у базовому додатку, як би ми не вирішили його назвати, це був перший каталог, який ми створили. Редагувати додаток/app.py та додайте наступне до шаблонів URL -адрес
from django.urls import include # вгорі
urlpatterns = [
# ... Попередній код тут
path('feed/', include(('feed.urls'), namespace='feed')),
]
Тепер, коли ми запускаємо сервер за допомогою Python Manage.py Runserver, ми побачимо створену нами сторінку, оскільки у нас є модель, перегляд та шаблон, а також шаблон URL -адреси, а також елементи в базі даних. Далі, давайте реалізуємо форму, яку ми створили, і почнемо створювати власні публікації. Але перш ніж ми напишемо занадто багато коду, давайте зробимо резервну копію за допомогою сценарію, який ми писали раніше, резервне копіювання. Запустіть цей сценарій в оболонці, зачекайте кілька моментів, і весь код буде підкріплений нашому сховищі GIT.
backup
Реалізація форми порівняно проста. Ми імпортуємо нашу форму, додамо обробник запиту на публікацію до перегляду та збережемо публікацію в базі даних, перш ніж перенаправляти на той самий вигляд. Ми можемо використовувати функцію перенаправлення, яку ми вже імпортуємо, та іншу функцію під назвою Reverse, щоб отримати URL -адресу для шаблону перегляду. Ми запитаємо це за допомогою рядка "подача: подача", оскільки простір імен включеного шаблону подача, а вид також називається подачею.
from feed.forms import PostForm
def feed(request):
posts = Post.objects.all() # Запитайте всі публікації в базі даних досі
if request.method == 'POST': # Обробляйте запит на публікацію
form = PostForm(request.POST) # Створіть екземпляр форми та збережіть до неї дані
if form.is_valid(): # Валідувати форму
form.save() # Збережіть новий об’єкт
return redirect(reverse('feed:feed')) # Перенаправлення на ту саму URL -адресу з запитом GET
return render(request, 'feed/feed.html', {
'form': PostForm(), # Не забудьте передати форму в контекст, щоб ми могли її зробити.
'posts': posts,
})
Тепер нам потрібно буде оновити шаблон для обліку нової форми. Ми можемо це зробити, використовуючи
купити | Купуйте за криптовалюту
https://glamgirlx.com/uk/practical-web-based-deep
https://glamgirlx.com/uk/practical-web-based-deep -
Залиште мені чайові в біткойнах за цією адресою: 3KhDWoSve2N627RiW8grj6XrsoPT7d6qyE
© Glam Girl X 2025