Pembelajaran Mendalam dan Keamanan Berbasis Web Praktis dengan Contoh

Oleh Daisy
Pembelajaran dan Keamanan Deep Berdasarkan Web Praktis Edisi ketiga Charlotte Harper 3 Juli 2024 Kata pengantar: Pertimbangan keamanan dalam membangun perangkat lunak untuk web adalah bagian penting dari rencana pengembang web dan eksekusi setiap saat merekayasa prototipe yang dapat diandalkan, stabil, dan berguna untuk tujuan praktis. DOM (Markup Objek Dokumen), dengan implementasi HTML, JavaScript, dan CSS serta perangkat lunak backend yang mengimplementasikan Python, C/C ++, Java dan Bash, memberi pengembang web kebebasan dan kekuatan untuk membuat berbagai proyek yang mengekspresikan kreativitas, memberikan kemudahan penggunaan dan fungsionalitas, menggambarkan kerendahan hati dan karakter, dan memberikan kemudahan penggunaan serta kenyamanan dan layanan penting yang semuanya menarik bagi rata -rata Joe, pengguna akhir yang ingin Bunuh waktu atau selesaikan sesuatu di internet, biasanya di perangkat smartphone layar sentuh. Kebanyakan orang bahkan tidak akan tahu harus mulai dari mana ketika mereka ingin membangun situs webgoresan, mereka akan cenderung memulai di situs web orang lain dan membangun sesuatu yang terbatas dalam fungsionalitas, ketergantungan, kemudahan penggunaan dan terutama kreativitas ketika mereka dapat memiliki semua alat kuat terbaru yang mereka miliki untuk membangun sesuatu yang berguna tanpa membuang -buang waktu menekan tombol menekan waktu , dan terutama membuang -buang uang untuk membayar langganan mahal untuk perangkat lunak yang beberapa orang ingin gunakan tetap mengingat keterbatasannya dalam kemudahan penggunaan dan fleksibilitas. Jika Anda memiliki beberapa menit untuk membaca buku ini dan mempelajari apa yang ingin saya ajarkan kepada Anda, atau bahkan berbicara dengan saya secara pribadi tentang tujuan Anda dan mendapatkan beberapa panduan ke arah yang benar, dan termotivasi untuk belajar kode dan menulis perangkat lunak Anda sendiri , bawa pulang buku ini dan sisihkan waktu untuk belajar membangun aplikasi web yang berpengaruh, kuat, ramping, dan penting berikutnya, sebuah situs web yang semuanya ada pada Anda dan melakukan persis seperti yang Anda inginkan dan memenuhi kebutuhan audiens Anda. Tentang saya: Saya seorang pengembang perangkat lunak denganRentang pengalaman dalam C/C ++, Java, Python, HTML, CSS dan JavaScript. Saya membangun situs web yang ingin digunakan orang, ingin berkunjung, dan bahkan kecanduan hanya menggunakan hanya untuk belajar, menciptakan kembali dan menghabiskan waktu, dan yang paling penting, saya menjual perangkat lunak. Jika Anda memiliki ide tentang bagaimana Anda ingin situs web terlihat dan berfungsi, Anda bersedia mendukung saya sehingga saya dapat memenuhi kebutuhan saya sendiri saat saya bertemu dengan milik Anda, dan Anda bersedia menutupi biaya menjalankan situs web sendiri, Saya akan membangun Anda di YouTube berikutnya, Tiktok, Twitter, Google, atau bahkan aplikasi keamanan berteknologi tinggi yang hanya dapat Anda akses. Alih -alih mencoba menjual waktu saya, saya mencoba membeli milik Anda: Saya ingin membujuk Anda untuk membangun aplikasi (situs web) sendiri dengan informasi yang sudah ada, dan mengajari Anda apa yang Anda butuhkan untuk menjadi pengembang perangkat lunak independen, Pengusaha, memimpin karier yang sukses di bidang apa pun yang Anda inginkan. Dan biarkan saya jelas, pendidikan yang saya berikan kepada Anda akan informal. Anda bisa pergi ke sekolah dan mempelajari semua ini dengan aPendidikan formal, atau bahkan membaca buku ini di sekolah, menyelesaikan tugas Anda, dan mengambil banyak dari pendidikan Anda, tetapi saya tidak akan secara resmi menempatkan Anda di kursi panas dan meminta Anda untuk menyelesaikan tugas. Saya bukan profesor Anda, Anda dapat menganggap saya seperti teman yang ingin membimbing Anda menuju karier yang didorong oleh kesuksesan pribadi Anda. Dan saya juga tidak menjual kesuksesan Anda, Anda perlu membelinya dengan waktu Anda. Belajar kode memiliki kurva belajar yang curam dan tidak pernah mudah, atau bahkan seharusnya. Anda perlu bekerja sekeras mungkin dan terus mencoba dan gagal dan mencoba lagi bahkan ketika Anda frustrasi untuk belajar dan membangun aplikasi sendiri. Itu adalah sifat kode itu sendiri. Kode dijalankan oleh kompiler yang dirancang untuk memberikan pesan kesalahan programmer, dan ini akan mengajarkan Anda cara membuat kode, bahkan jika Anda hanya menyalin kesalahan ke mesin pencari Anda dan membaca contoh orang lain. Dan saya harus mengatakan, Anda tidak perlu terlalu kaya, pintar,Ester, atau bahkan berorientasi pada detail atau terorganisir untuk membangun aplikasi. Komputer mengurus organisasi itu untuk Anda. Anda hanya perlu bertahan melalui coba -coba, mempertahankan fokus dan bekerja keras pada apa yang Anda lakukan, dan Anda akan memiliki karier yang sangat sukses secara keseluruhan dari apa yang Anda lakukan. Siapa saya: Saya menyadari bahwa bagian terakhir lebih banyak tentang belajar dan Anda mengambil jalan dari buku ini. Siapa sebenarnya saya? Itu pertanyaan yang rumit. Saya tidak jelas pada diri saya sendiri, karena saya menderita kondisi medis yang dapat menyulitkan saya untuk bahkan membuat kode atau menulis buku ini pada waktu -waktu tertentu, sambil menghadirkan tantangan dengan sosialisasi dan masalah identitas yang membuat hidup saya lebih sulit dalam hal memperkenalkan diri saya . Singkatnya, jika Anda membaca buku ini, Anda membawanya pulang karena Anda membalikkannya dan berpikir itu berguna, atau bahkan jika Anda baru saja membaca sejauh ini, untuk Anda, saya adalah orang yang berpikiran seperti yang ingin melihat Anda berhasil masuk Segala sesuatu yang Anda lakukan. Saya sendiri seorang insinyur,pengembang, dan seorang siswa, dan saya menulis buku ini untuk siswa lain yang ingin membuat hidup mereka lebih mudah dengan memiliki buku pegangan perangkat lunak yang mereka butuhkan membuat hidup mereka lebih mudah dengan memberikan contoh untuk disalin yang cocok bersama seperti teka -teki besar ke dalam pekerjaan yang berfungsi , aplikasi yang bermanfaat, besar, fungsional, kohesif, dan menarik yang dapat mendorong kesuksesan tidak peduli lini bisnis. Sebagian besar, inilah yang saya lakukan: Saya membangun aplikasi untuk membantu diri saya dan orang lain berhasil. Saya juga seorang penulis, meskipun ini adalah publikasi pertama saya yang ingin saya selesaikan untuk menggabungkan portofolio saya menjadi dokumen yang berguna, dan saya juga seorang seniman. Saya akan mengakui ini untuk Anda, saya semacam orang yang aneh. Saya tidak sempurna, saya telah menjalankan Ins dengan hukum bahkan membuat saya meninggalkan perguruan tinggi dan universitas dan meninggalkan negara bagian untuk mencoba membuat nama untuk diri saya sendiri dengan lebih sukses. Saya seorang wanita sejak lahir, saya memakai riasan, mengambil foto diri saya, memakai gaun dan pakaian wanita lainnya, dan saya tetap sadar akan diri saya sebagai aperempuan secara alami. Saya memiliki masalah dengan orang lain di masa lalu yang mengarah pada perjuangan dengan menulis dan membangun aplikasi web, dan saya minta maaf bahwa saya belum bisa mendapatkan buku ini di tangan Anda lebih cepat: Anda membutuhkan ini. Anda akan ingin membaca dan menulis kode yang terlihat seperti milik saya dan bekerja seperti milik saya dan melakukan hal yang sama tetapi bahkan lebih baik, karena jika Anda mampu membeli buku ini alih -alih menumbuk keyboard Anda seperti yang saya lakukan hanya untuk membuat buku sendiri meminta uang Untuk itu, Anda memiliki sumber daya yang Anda butuhkan untuk sukses dalam hidup Anda. Saya memiliki segala macam masalah dengan keluarga yang tumbuh, kondisi kesehatan, dokter, media, dan hukum, dan kode saya sangat mencerminkan perjuangan yaitu feminisme dan sifat perempuan di dunia yang terpecah dan frustrasi. Namun, buku ini adalah sesuatu yang sangat saya pedulikan, bayi saya, portofolio saya, dan mata pencaharian saya, jadi saya menghargai pertimbangan Anda ketika Anda membawa pulang teks dan dengan hati -hati meneliti untuk belajar dari saya. Harap diingat bahwa saya tidakdll, buku ini akan memiliki kesalahan, revisi, dan edisi baru, dan Anda perlu berpikir dengan otak logis Anda sebaik mungkin untuk memiliki pengalaman yang sukses dengan tulisan saya. Juga, pahami bahwa saya bermaksud baik untuk Anda bahkan ketika Anda menghadapi tantangan saat menulis. Pikirkan seperti ini: Ketika Anda hanya dapat menyewa sistem komputer untuk melakukan apa pun yang dapat Anda bayangkan di ruang digital, menyimpan semua informasi yang Anda temui, #$%! Yze dan mengaturnya, dan mulai memahaminya, Anda akan melakukannya Tak pelak menghadapi kesulitan dengan informasi yang Anda konsumsi dan bahkan menerbitkan. Saya memberi tahu Anda ini karena saya mengalami kesulitan yang sama. Gunakan buku ini dengan risiko Anda sendiri, bekerja dengan komunitas dan komunitas Anda yang tersedia untuk Anda membangun perangkat lunak dalam pengaturan yang aman, dan jangan mengambil sesuatu untuk secara pribadi ketika Anda gagal atau bahkan berhasil dengan cara yang salah: Begitulah cara saya sampai sejauh ini , dan mengapa saya bisa membawakan Anda teks ini dan membantu Anda berhasil tanpa menyimpang di jalur kegilaanAves saya hancur, robek dan keributan sementara saya menemukan masalah biasa yang dilakukan semua orang dalam skala global berkat skala global paralellistic dari jaringan tempat kami akan bekerja, internet. Anda mungkin tidak terlalu akrab dengan siapa saya hanya dengan beberapa kata, tetapi saya mendorong Anda untuk membaca, Anda akan mengenal saya ketika Anda terus membaca dan memahami saya sambil membangun proyek Anda sendiri untuk menyelesaikan pekerjaan Anda. Tidak akan ada pekerjaan rumah dengan buku ini, selama profesor atau guru Anda tidak memberikan Anda apa pun, tetapi saya sangat mendorong Anda untuk membangun portofolio proyek sendiri saat Anda membaca, serta proyek batu penjuru yang menampilkan bagaimana Anda bisa Terapkan apa yang telah Anda pelajari. Proyek Capstone saya adalah dasar untuk sebagian besar dari apa yang akan Anda baca dalam buku ini, karena menggabungkan kode dari proyek saya sebelumnya, kode yang telah saya buat dan pelajari untuk menulis secara metodis dengan tangan, dan berbagai ide dan tips yang telah membantu saya berhasil ke titik di mana saya dapat memutar aplikasi sederhana itusepenuhnya ditampilkan dan terlihat dan berperilaku seperti aplikasi populer yang mungkin Anda lihat menggunakan teman atau keluarga Anda, di internet, diiklankan kepada Anda, atau dalam berita. Apa buku ini: Buku ini adalah tutorial dengan contoh. Anda dapat menemukan kode di sini, instruksi untuk cara belajar kode, informasi tentang kode debugging dan memperbaiki kesalahan, pemecahan masalah, instruksi tentang cara mencadangkan dan menyimpan kode Anda, menggunakan kembali jika ada yang merusak kode Anda, mengamankan kode Anda, menggunakan Kode Anda, membangun situs web interaktif yang menghibur, menarik, dan membuat ketagihan, dan Anda akan merasakan siapa saya, mengapa ini penting, dan bagaimana memerankan diri Anda, aplikasi dan citra perusahaan Anda, serta citra perusahaan, serta citra perusahaan Anda, serta citra perusahaan Anda, serta perusahaan Perangkat lunak yang Anda bangun dengan cahaya terbaik mutlak untuk menjadi yang paling menarik bagi pengguna akhir Anda, pengunjung situs web Anda. Dalam buku ini, saya akan mendemonstrasikan sejumlah contoh desain perangkat lunak dengan fokus pada web sebagai platform serta keamanan. Kami akan memulai pengalaman belajar dengan membangun dasarOjop Menggunakan shell unix, dengan fitur cadangan dan skrip. Kemudian, kami akan memeriksa situs web blog dasar, meningkatkan blog kami dengan fitur foto dan video serta menggunakan fitur ini untuk menggunakan solusi keamanan menggunakan perangkat lunak gratis, dan mengamankan server kami menggunakan Modul Otentikasi Pluggable (PAM). Kami kemudian akan meninjau penanganan dan pemrosesan file, mengeksplorasi pengeditan video, donasi suara, pemindaian barcode dan pengenalan karakter optik, di antara konsep -konsep lainnya. Sepanjang jalan kami akan memeriksa API yang akan membantu kami membuat perangkat lunak kami lebih berguna dan aman, dengan opsi gratis dan berbayar. Sepanjang jalan, kami akan mengeksplorasi keamanan fisik dan alat militan seperti senjata api dan desain amunisi dan manufaktur termasuk desain barel dan repeater, desain menara dan drone, dan kepala sekolah lainnya yang akan kami integrasikan dengan perangkat lunak kami di jaringan yang ada untuk melindungi perangkat lunak kami dan menunjukkan pertahanan diri dan resillience. Kami akan beristirahat di sepanjang jalan untuk membangun game, 2D dan 3DEngine yang membawakan, dan bekerja dengan perangkat keras tertanam dalam contoh studi kasus perangkat lunak rendering dimensi dasar dan masing -masing pemijat yang bergetar elektronik di karet silikon. Sepanjang jalan, kami juga akan menggunakan solusi pembelajaran mesin yang sudah tersedia untuk lebih mengamankan perangkat lunak kami. Kami juga akan menggunakan alat stok yang tersedia untuk Web untuk merampingkan dan mengamankan proses. Buku ini adalah panduan untuk kesuksesan Anda dalam membangun aplikasi web dan mengintegrasikannya dengan jaringan komputer profesional dan sistem mekanik tertanam, dan secara keseluruhan panduan untuk membangun perangkat lunak dan perangkat keras tertanam tanpa pengetahuan latar belakang atau pengalaman sebelumnya. Buku ini bukan: Jika Anda benar -benar ingin memiliki situs web, Anda bisa membuat toko sederhana dan menjual apa yang Anda butuhkan, memposting blog, memposting foto atau video, atau tanpa pernah menulis satu baris kode. Buku ini bukan itu. Buku ini akan mengajari Anda cara membangun perangkat lunak yang lebih berguna, sepenuhnyaDitampilkan, fungsional dan aman daripada perangkat lunak apa pun yang sudah Anda temukan, karena menggunakan perangkat lunak terbaru yang masih prototipe, mungkin mahal untuk dijalankan pada skala perusahaan yang lebih tua yang beroperasi di, dan tidak menarik untuk mundur, perusahaan berbelit -belit diatur ke menghasilkan uang untuk orang yang tidak benar -benar melakukan apapun. Jika Anda mengikuti buku ini dengan cermat, Anda akan ingin menulis kode, kode penelitian, membangun aplikasi Anda sendiri, dan Anda akan menghasilkan uang dari apa yang Anda lakukan. Saya akan menghasilkan uang dari buku ini, bahkan pada tahap awal, karena berisi informasi yang dibutuhkan orang dan ingin membaca, dan sudah membeli ketika mereka membeli atau menggunakan aplikasi saya. Buku ini tidak akan membangun aplikasi untuk Anda, tetapi itu akan mengarahkan Anda ke arah yang benar dan mempersenjatai Anda dengan alat yang Anda butuhkan dan keterampilan dan tips yang akan memfasilitasi kesuksesan Anda sendiri dalam membangun perangkat lunak untuk web, dengan setiap baris Kode yang perlu Anda tulis sebagai contoh, siap untuk disatukan menjadi perangkat lunak yang Anda dan pendukung, tamu, klien, AndaRiends, keluarga, pengunjung, kontraktor, dan orang -orang di internet ingin menggunakan dan mendukung. Apa yang akan Anda pelajari: Buku ini akan mengajari Anda cara membangun dan menjual perangkat lunak, sangat fungsional, perangkat lunak yang berguna, perekaman media, fitur keamanan seperti pengenalan wajah, pemindaian kode batang zona yang dapat dibaca mesin, API web untuk mengautentikasi, merekam dan membuat video dan foto, dan bertukar pesan seperti Bluetooth dan komunikasi Field Near (NFC). Buku ini akan mengajari Anda cara menggunakan komputer jaringan, dengan fokus pada Debian Linux, cara membangun kode bash untuk membuat pemasangan dan mencadangkan perangkat lunak Anda menjadi angin yang mulus dan otomatis, cara membangun kode python sebagai backend untuk melayani pesan dinamis, gaya Hal -hal dengan baik menggunakan gaya CSS dengan bootstrap, memungkinkan login pengguna dan interaktivitas melalui perangkat jaringan, membangun media interaktif dan jaringan dengan situs web lain untuk menawarkan fitur keamanan seperti pesan teks untuk verifikasi atau lainnya tujuan, pemindaian ID, moderasi gambar dan video, dataRansaksi untuk menjaga perangkat lunak Anda aman, pemrosesan pembayaran, perdagangan cryptocurrency, tugas asinkron, dan banyak lagi. Anda akan belajar cara membangun perangkat Bluetooth Anda sendiri, dengan baterai, pengisi daya, mikrokontroler, sirkuit, motor dan sensor, menggunakan solder, kawat, dan dicetak 3D serta bahan cor. Saya akan mendemonstrasikan prinsip -prinsip desain 3D yang diterapkan pada manufaktur dan alat aditif dan pembuatan die, sehingga Anda dapat memproduksi perangkat perangkat keras tertanam Anda sendiri dengan baterai terintegrasi, pengisi daya, sirkuit elektronik, dan output fungsional. dan jaringan mereka dengan Bluetooth dan Web. Secara khusus, kami akan memeriksa dua studi kasus, pemijat yang bergetar dan senjata api buatan sendiri, keduanya diprogram dalam OpenScad, yang tersedia sebagai antarmuka grafis atau utilitas baris perintah dan dapat diintegrasikan ke dalam web untuk hasil yang lebih cepat. Anda akan belajar cara membangun dan menggunakan situs web dari bawah ke atas tanpa pengalaman sebelumnya, membuatnya fungsional, aman, indah, bermanfaat dan palingpraktis secara mortasi. Anda akan belajar cara menggunakan pembelajaran mesin dan visi komputer untuk membuat situs aman dan lebih praktis, merekam video dan audio dari situs web Anda, menyumbangkan suara Anda, membuat musik dan memodulasi audio untuk membuat sampel yang berguna, dan cara memecahkan kebisingan dengan Memanfaatkan situs web lain untuk membangun jaringan situs web terbaik yang dapat Anda tautkan langsung ke Anda untuk berbagi semua informasi berguna yang Anda tawarkan, dan yang lebih penting membawa orang ke perangkat lunak dan bisnis Anda. Buku ini akan sangat terfokus pada media, keamanan dan pembelajaran mesin, yang merupakan tiga komponen utama yang akan membantu Anda membangun perangkat lunak yang berguna untuk web dengan melibatkan pengguna yang tepat dan melepaskan yang salah dengan cara yang realistis, praktis, Tangan dan menarik sementara juga otomatis, dan kokoh. Buku ini mengajarkan UNIX, khususnya Debian (Ubuntu), Bash Shell, Python, HTML, CSS, JavaScript, dan sejumlah paket perangkat lunak yang berguna untukn Suka permintaan, serta perangkat lunak bash yang berguna seperti Git dan FFMPEG. Saya juga akan mengajari Anda cara menukar cryptocurrency secara otomatis, dan mengambil pembayaran dalam cryptocurrency atau dari kartu debit biasa sambil bahkan membayar pengunjung Anda bagian dari pendapatan Anda jika Anda memilih untuk melakukannya. Saya akan mengajari Anda cara menghasilkan uang dari situs web Anda melalui iklan juga, cara menyiapkan aplikasi Anda untuk mesin pencari dan membuatnya cepat, peringkat peringkat pertama untuk apa yang akan dicari oleh pelanggan Anda untuk menemukan Anda, dan peringkat dalam banyak hal yang umum umum pencarian mungkin. Saya akan mengajari Anda cara menjual perangkat lunak Anda, mengiklankannya, menarik bagi klien yang mencari layanan Anda, dan membuat nama untuk diri Anda sendiri di internet melalui jalan yang sudah ada, murah, dan bekerja dengan baik. Saya akan mengajari Anda cara menyimpan data Anda di komputer cloud yang cocok untuk Anda dan menyimpan data Anda dengan murah, cara merencanakan dan membangun situs web yang melakukan apa yang diinginkan pengguna Anda dan apa yang Anda inginkan, dan bagaimana menjaga pengguna Anda tetap terlibatSitus Anda mengetuk telepon mereka dengan pemberitahuan, email, pesan teks, panggilan telepon, dan lebih banyak jalan untuk membawa pengguna Anda kembali ke situs web Anda yang Anda inginkan di balik klik tombol yang diamankan hanya untuk Anda. Buku ini akan fokus pada kepraktisan menerbitkan dan mendistribusikan media dalam jumlah besar, dari teks ke foto ke video hingga audio, membuat kesan yang baik pada pengguna akhir (klien Anda), dan menjual diri Anda dengan cara apa pun yang Anda lakukan untuk membuat Situs web, aplikasi yang mewakili Anda dan hanya Anda, dan membuat Anda, perangkat lunak dan perusahaan Anda terlihat bagus dengan cara terbaik. Anda juga akan mempelajari beberapa tips dan trik dari saya, dari kiat pengkodean, kesombongan praktis seperti makeup dan fotografi, pemodelan dan akting, dan banyak lagi, yang akan menjadi penting untuk menggambarkan diri Anda dan perusahaan Anda dalam cahaya terbaik menggunakan semua alat yang tersedia yang tersedia kepada Anda sambil mendistribusikan konten sebanyak yang Anda butuhkan di seluruh keseimbangan platform yang sehat untuk membawa AndaE membuahkan hasil tanpa lebih banyak upaya, pekerjaan, atau uang daripada yang diperlukan. Buku ini disebut "Pembelajaran Deep Berdasarkan Web Praktis dengan Contoh" karena suatu alasan: Berurusan dengan pembelajaran dengan kode, khususnya untuk web, khususnya dengan fokus pada keamanan, dari sudut pandang praktis, dengan contoh kode kerja yang berfungsi tujuan praktis yang diuraikan dalam teks. Komponen pembelajaran teks ini juga mencakup pembelajaran mesin, kode yang akan saya tunjukkan cara menjalankan untuk web yang akan menangani visi komputer, pengenalan wajah, moderasi gambar dan video, peningkatan gambar, peningkatan resolusi, captioning gambar, dan tugas -tugas lain seperti lainnya Metrik prediksi yang bersumber dari gambar, seperti sifat gambar sebagai gambar otentik, yang ditransfer komputer, atau salinan optik (foto gambar, atau foto cetak). Pembelajaran mesin sangat penting dalam hal keamanan web dan keamanan perangkat lunak, karena dapat membentuk tugas yang tidak mungkin. Komputer AndaMasuki Anda dengan kode sandi, tetapi mungkin lebih aman untuk menggunakannya jika mencatat Anda dengan wajah Anda. Anda dapat membuat komputer server aman ini, komputer yang biasanya meminta Anda untuk nama pengguna dan kode sandi dan mencatat Anda, mungkin dengan token konfirmasi untuk setiap login baru atau alamat IP baru, tetapi jika Anda sedang membangun skala besar, mudah untuk dilakukan Penggunaan, secara fundamental aman, dan perangkat lunak yang kuat, ini mungkin cukup. Mengikat perangkat lunak Anda terlalu dekat dengan perangkat lunak orang lain, seperti layanan email atau layanan pesan teks, tidak cukup untuk membuat perangkat lunak Anda aman, atau siapa pun (situs apa pun yang Anda gunakan). Siapa pun yang membangun perangkat lunak yang sangat aman memiliki perasaan tentang apa yang disiratkan. Perangkat lunak secara inheren tidak aman karena perangkat dan akun yang kami gunakan untuk mengaksesnya tidak selalu siap membantu kami, mereka bisa berada di tangan siapa pun dengan niat buruk untuk perangkat lunak dan karenanya dapat menimbulkan risiko pada perangkat lunak itu sendiri. Ini adalah sesuatu dari fokus buku ini. Komputer jaringan secara defaultDiamankan dengan token kunci yang panjang, dipanggil dan kunci shell SSH atau aman, dan sebaliknya diamankan dengan server web, karena server web menyediakan akses terbuka serta alat keamanan canggih yang berjalan di server itu sendiri. Server web memiliki akses ke browser web pengguna, yang bisa dibilang bagian paling kuat dari perangkat pengguna, karena itu adalah tempat di mana pengguna dapat mengakses perangkat lunak jaringan. Toolkit ini dapat membuat teks, halaman web yang Anda lihat, dan juga dapat merekam gambar, audio, dan video (seperti foto wajah atau id negara), dapat membaca dan menulis ke perangkat radio Bluetooth, dan dapat membaca dan menulis ke Field Near Field dekat Tag transponder, kartu kunci yang murah, fob, stiker, cincin dan bahkan implan chip dengan nomor seri unik yang dapat dibaca dan ditulis dengan data yang dihasilkan dan divalidasi oleh server web yang terkait dengan situs web. Menggunakan semua alat yang Anda miliki, dengan buku ini Anda akan melengkapi diri Anda dengan pengetahuan untuk membangun situs web yang aman, dan secara keseluruhan aSistem komputer jaringan Ure yang cocok untuk Anda, melakukan penawaran Anda, dan terlihat dan terasa benar. Tempat Memulai: Anda dipersilakan untuk melewati bagian yang saya mulai buku ini, atau bagian mana pun, ke kode yang tepat yang Anda butuhkan, terutama jika Anda memiliki pengalaman dengan pengkodean sebelum atau alat yang disebutkan di atas yang akan saya gambarkan secara rinci dalam buku ini sebagai sebagai serta mendokumentasikan kasus penggunaan dan contoh -contoh praktisnya. Jika Anda tidak memiliki pengalaman dalam menulis kode, saya sangat menyarankan Anda membaca semua buku ini, dan terutama merekomendasikan Anda membaca bagian sebelumnya, untuk memastikan buku ini tepat untuk Anda. Jika buku ini tidak tepat untuk Anda, pertimbangkan untuk memberi hadiah kepada teman atau kerabat yang mungkin tertarik untuk belajar tentang pengembangan web sendiri, dan bahkan mempertimbangkan untuk meminjamnya kembali dan belajar dari mereka untuk mengisi celah di mana saya mengecewakan Anda sebagai a Guru, atau guru lain melakukannya sebelum saya. Mulailah di mana Anda mau, setiap bagian dari buku ini akan berguna jika Anda berniat membangun yang bermanfaatPP, dan pertimbangkan bahwa aplikasi terbaik dibangun dengan mempertimbangkan pengguna akhir: Ketahui pelanggan Anda. Sekarang Anda mengenal saya, Anda tahu buku ini, dan Anda siap untuk memulai. Untuk memulai, ambil komputer (bahkan laptop termurah dari toko kotak, Amazon, atau desktop tua berfungsi, dan mengaturnya dengan cara yang cocok untuk Anda. Cara membaca buku ini: Teks disorot, menunjukkan bahwa teks tersebut termasuk dalam prompt perintah, di mana Anda akan menulis kode yang Anda jalankan. Perintah prompt sangat terfokus keyboard dan membutuhkan sedikit atau tidak ada mengklik, mempercepat alur kerja Anda dan membuat segalanya lebih mudah pada Anda. Memulai: Mari selami. Kita akan mulai dengan membangun kode di mesin lokal dan mulai tanpa membangun situs web yang terhubung ke internet. Ini lebih aman untuk memulai, tidak ada biaya, dan mudah bagi Anda. Bergantung pada sistem operasi Anda, masuk ke shell bash akan sedikit berbeda. Untuk Mac OS, saya sarankan menginstal mesin virtual pada saat ini, karena Anda akan mendapatkan yang paling kompatibilitasmesin virtual. Berbagai penyedia seperti VirtualBox dan Paralells dapat menjalankan mesin virtual untuk Anda, meskipun juga dimungkinkan untuk menginstal Ubuntu secara langsung di mesin, jika Anda lebih suka menggunakan lingkungan asli yang direkomendasikan untuk membuat pengalaman yang cepat dan ramping. Jika Anda menggunakan Linux atau Windows, yang saya rekomendasikan, harus sangat mudah untuk membuat proyek. Buka terminal Anda, sesuaikan ukuran sesuai keinginan Anda, dan mulailah mengikuti langkah 2. Jika Anda menggunakan Windows, silakan ikuti langkah 1. Langkah 1: - Pengguna Windows saja Di Windows, buka command prompt sebagai administrator dan ketik WSL - instalasi Langkah 2: - Lanjutkan di sini, atau lewati langkah 1 ke sini jika Anda tidak menggunakan Windows Di terminal terbuka, (tergantung pada OS Anda, yang disebut Ubuntu di Windows, Terminal di Mac atau Linux, atau nama serupa), mulailah dengan membuat proyek. Kami melakukan ini dengan perintah MKDIR, yang membuat direktori. Jika Anda perlu membuat direktori untuk menyimpan proyek Anda, yang disarankan, gunakanPerintah CD untuk mengubah ke direktori dan dan CD/PATH/TO/Direktori - Path adalah folder (file) yang mendahului direktori tujuan Anda, jalur default Anda adalah ~ atau/home/nama pengguna (di mana nama pengguna adalah nama pengguna Anda). Untuk mengubah ke direktori default, ketik CD atau CD ~ Contoh mkdir - ganti "contoh" dengan nama direktori Sekarang Anda memiliki direktori yang berfungsi untuk proyek Anda. Karena sangat penting untuk disimpan direktori ini jika Anda perlu beralih ke mesin yang berbeda atau menggunakan kode yang Anda tulis sehingga siap untuk web, kami akan membangun skrip untuk mencadangkan direktori Anda dalam beberapa langkah berikutnya. Tetapi membangun skrip membutuhkan sedikit kode, dan kode harus diotomatisasi agar bermanfaat. Jadi mari kita bangun skrip untuk membuat skrip terlebih dahulu. Mari kita mulai dengan membuat skrip dan membuatnya dapat dieksekusi. Kami akan menggunakan sudo, chmod dan sentuhan untuk ini, dan memanggil skrip
sudo touch /usr/bin/ascript
sudo chmod a+x /usr/bin/ascript
sudo nano /usr/bin/ascript
Sekarang kami telah membuat skrip, membuatnya dapat dieksekusi, dan siap mengeditnya. Nano adalah editor teks yang akan memungkinkan Anda mengedit teks tanpa mengklik, yang jauh lebih mudah daripada menggunakan antarmuka pengguna grafis. Untuk mengedit file dengan nano, gunakan nano dan kemudian jalur ke file. Untuk membuat skrip yang membuat skrip, itu cukup mirip dengan membuat skrip kami di tempat pertama. Kami akan menggunakan kode yang sama seperti di atas, mengganti nama skrip, "Ascript" dengan parameter argumen, $ 1. Ini memungkinkan kami memanggil skrip dengan mengetikkan nawit Sudo Ascript, pada titik mana kami dapat membuat skrip baru dengan mengganti "newscript" dengan nama skrip Anda. Kode di Nano seharusnya terlihat seperti:
sudo touch /usr/bin/$1
sudo chmod a+x /usr/bin/$1
sudo nano /usr/bin/$1
Dan untuk menutup Nano, kita dapat menahan tombol kontrol dan menekan x, lalu y untuk menunjukkan bahwa kita sedang menyimpan file, dan tekan kembali. Sekarang alih -alih mengetik ketiga perintah ini untuk mengedit skrip, kita akan dapat mengetikkan sudo Ascript Ascript untuk mengedit skrip lagi. Ini berhasil! Dan skrip baru apa pun dapat dijalankan dengan mudah dengan menyebutnya di shell. Mari kita simpan pekerjaan kita sekarang: mari kita tulis skrip cadangan untuk menyimpan skrip baru kita dan kemudian mendukungnya di direktori proyek kita, sementara juga mencadangkan skrip cadangan.
sudo ascript backup
Sekarang, di Nano:
sudo cp /usr/bin/backup /path/to/directory/
sudo cp /usr/bin/ascript /path/to/directory/
Where/Path/To/Directory adalah jalur menuju proyek yang Anda buat dengan MKDIR. Kemudian kita akan belajar cara menyalin jalur berulang seperti ini dengan loop dan daftar, yang lebih sedikit kode, tetapi untuk sekarang mari kita tetap sederhana dan memiliki beberapa baris. Untuk menjalankan skrip ini dan cadangkan kode Anda, simpan file di nano dengan kontrol+x, y dan kembali, dan ketik di bawah ini ke dalam shell Anda
backup
Jika Anda diminta sama sekali untuk kata sandi saat membaca buku ini dan mengikuti di shell, silakan masukkan kata sandi pengguna Anda dengan benar, Anda akan memiliki tiga percobaan sebelum Anda perlu menjalankan kembali perintah. Anda dapat menggunakan panah atas dan bawah untuk menukar perintah dan mengeditnya, jika Anda perlu menjalankan apa pun dua kali. Sederhana tekan naik dan turun sebentar -sebentar untuk memilih perintah, sebelum mengedit perintah dengan kanan, panah kiri dan menghapus tombol serta keyboard, dan menjalankannya dengan kembali.
Selamat! Anda berhasil membuat skrip cadangan yang luar biasa yang mencadangkan dua skrip shell penting di direktori kerja Anda. Kita mungkin memindahkan barang -barang nanti karena proyek semakin besar, tetapi ini berhasil untuk saat ini. Mari kita beralih ke cadangan di cloud, kami akan menggunakan GitHub untuk ini (meskipun ada banyak solusi git lainnya untuk cadangan, semuanya hampir sama.) Git adalah perangkat lunak kontrol verision yang memungkinkan Anda mencadangkan pengeditan untuk Anda perangkat lunak saat Anda membuatnya ke server, sementaraJuga memungkinkan Anda untuk mengunduh seluruh salinan perangkat lunak Anda di balik kata sandi atau kunci. Ini sangat berperan dalam menyimpan perangkat lunak Anda, terutama saat kami bermigrasi ke instance Linux yang mengamankan yang terkadang pecah ketika satu baris kode gagal, membuat Anda terkunci sementara kode Anda mungkin tidak dicadangkan jika Anda tidak mendapatkan kesempatan untuk mendukungnya Naik secara otomatis, yang akan kami bahas.
Jika Anda belum menggunakan mesin virtual Ubuntu pada saat ini, saya merekomendasikan menggunakan mesin virtual Ubuntu pada saat ini karena itu akan membuat hidup Anda lebih mudah ketika menginstal semua paket yang diperlukan untuk membangun situs web yang berfungsi dan membentuk pembelajaran mendalam yang mendalam Operasi di komputer Anda. Kami akan memindahkan kode ke server web dalam waktu dekat, tetapi kami ingin memastikan ada setidaknya beberapa lapisan keamanan di belakang server web kami yang tahan terhadap phishing, dan menggunakan sejumlah paket Linux untuk dilakukan ini. Jika Anda masih ingin menggunakan Mac OS, Anda dipersilakan untuk mencari dan menginstale Paket yang diperlukan online, tetapi mungkin tidak ada alternatif untuk setiap paket yang akan dicakup buku atau seri ini.
Mari kita tambahkan beberapa perintah untuk melakukan pekerjaan kita dengan skrip cadangan dengan menjalankan perintah sudo ascript
# ...
git add –all
git commit -m “backup”
git push -u origin master
Sekali lagi, kontrol x untuk menyimpan.
Sekarang kita perlu melakukan konfigurasi satu kali untuk proyek ini. Karena ini akan segera menjadi proyek git, kita tidak perlu mengetik setiap perintah setiap kali kita menggunakan dari repositori git, tetapi kita akan memahami ini ketika kita menulis skrip penyebaran kita. Untuk memulai, mari kita pastikan kita berada di direktori yang tepat dan menginisialisasi repositori git dan menghasilkan tombol SSH.
cd /path/to/directory
git init
git branch -m master
ssh-keygen
Setelah kami mengetik ssh-keygen, kunci baru harus disimpan di folder home di bawah folder yang disebut .ssh. Ini disebut id_rsa.pub. Mari kita temukan kunci ini dan salin. Untuk melihatnya,
cd ~
cat .ssh/id_rsa.pub
Salin teks yang dikembalikan oleh perintah terakhir, dan buat akun dengan penyedia git Anda (idealnya github), sebelum menambahkan kunci ssh ke akun Anda. Setelah Anda memiliki akun, klik menu kanan atas dan masukkan pengaturan, sebelum menambahkan tombol SSH Anda di tombol SSH dan GPG di bawah akses di menu. Pilih Tambahkan Kunci SSH dan tambahkan milik Anda dengan menempelkannya dan memberikannya judul, sebelum menyimpan dan kembali ke GitHub untuk membuat repositori baru. Ini serupa untuk penyedia git lainnya, Anda harus membaca dokumentasi mereka. Dalam konfigurasi repositori baru, berikan nama deskriptif repositori Anda dan putuskan apakah Anda ingin mempublikasikannya, dan pastikan untuk mengkonfigurasi belum ada file untuk dimasukkan. Setelah repositori dibuat, salin klon dengan URL SSH, dan tempel ke perintah berikut.
git remote add git://… (your remote URL)
Sekarang Anda dapat kembali ke repositori Anda dengan CD, Anda akan terbiasa dengan ini. Coba skrip cadangan Anda sekarang dengan cadangan
Besar! Sekarang kita benar -benar bisa mendapatkan pengkodean. Mari kita pasang Django sekarang karena kita memiliki pemahaman yang baik tentang bash dan git. Django akan membiarkan kami secara otomatis mendukung perangkat lunak kami, Bash dapat melakukan ini juga tetapi Django harus memiliki implementasi yang lebih aman yang lebih aman (dapat dinonaktifkan dan dikonfigurasi dengan lebih mudah).
Untuk menginstal perangkat lunak di Ubuntu, kami akan menggunakan perintah sudo apt-get. Pertama, mari kita perbarui dan tingkatkan perangkat lunak yang sudah kami miliki. Ini dapat dilakukan dengan pembaruan sudo apt-get dan upgrade sudo apt-get -y. Selanjutnya, mari kita menginstal Python dan lingkungan virtual kami, rumah kode kami, dengan perintah berikut: sudo apt-get menginstal python-is-python3 python3-venv
Ini semua yang Anda butuhkan untuk pergi dengan Django dalam hal pemasangan perangkat lunak dalam contoh Ubuntu. Untuk Windows dan Linux ini harus cukup mudah, tetapi untuk Mac Anda mungkin ingin menginstal mesin virtual danLinux di atasnya menggunakan lingkungan virtual gratis atau berbayar seperti VirtualBox atau Paralells Desktop dan menciptakan kembali langkah -langkah di atas untuk mengatur lingkungan Ubuntu. Ubuntu sangat penting dalam hal ini karena itu adalah perangkat lunak yang dijalankan situs web dan memungkinkan mereka untuk meng -host situs web dengan semua perangkat lunak yang disebutkan di atas.
Mari kita gali ke dalam Django.
Di direktori kami lagi, dengan
python -m venv venv # Menciptakan lingkungan virtual di mana kode disimpan
source venv/bin/activate # Mengaktifkan lingkungan virtual
pip install Django
django-admin startproject mysite . # Di mana saya adalah proyek yang saya mulai di direktori saya saat ini.
Django baru saja memulai, karena Django menjadi tuan rumah server web dan melakukan semua yang kita butuhkan untuk menjalankan dan menjalankan situs web lokal. Sekarang setelah kami menginstal Django, mari kita mengedit pengaturan sedikit untuk membuatnya berfungsi seperti yang kita butuhkan. Pertama, mari kita buat aplikasi baru
python manage.py startapp feed
Anda akan melihat aplikasi pertama disebut feed. Aplikasi harus dipanggil apa pun yang Anda suka, dan kami akan membuat aplikasi baru, tetapi nama setiap aplikasi harus konsisten setiap kali aplikasi dirujuk dalam kode. Untuk menambahkan aplikasi baru, kami akan selalu mengedit settings.py di direktori lain aplikasi yang dibuat, dinamai di startProject, selanjutnya aplikasi. Menggunakan nano,
nano app/settings.py
Di pengaturan, temukan installed_apps dan pisahkan [] menjadi 3 baris. Menggunakan empat spasi di garis tengah kosong, tambahkan 'feed', atau nama aplikasi Anda. Bagian dari pengaturan ini. PYPY akan terlihat seperti:
INSTALLED_APPS = [
'feed',
]
Sebelum kita lupa, mari kita uji bahwa Django bekerja. Menggunakan perintah python kelola.py runserver 0.0.0.0:8000, kita dapat menjalankan server dan kemudian menavigasi di browser web di komputer yang menjalankan kode ke http: // localhost: 8000 dan lihat contoh halaman web (itu berfungsi!) Keluar dari server dengan kontrol C, sama seperti perintah lainnya.
Sekarang, mari kita gali menulis beberapa kode Python. Django memiliki tiga komponen utama, semuanya dijalankan dengan kode sepenuhnya. Komponen disebut model, tampilan dan templat, dan masing -masing berada pada level yang lebih tinggi dan lebih rendah masing -masing sebelum halaman web dikirimkan ke pengguna.
Model ini adalah kode yang menyimpan informasi dalam database untuk pengambilan, sortasi dan rendering.
Tampilan memutuskan bagaimana model ini diberikan, dimanipulasi, dan dimodifikasi, hampir setiap tampilan akan menggunakan model secara langsung.
Templat adalah kode HTML dengan beberapa lonceng dan peluit tambahan yang disebut bahasa template. Template diterjemahkan oleh tampilan di mana ia diisi dengan kode python danKonteks seperti model dan informasi (string dan bilangan bulat) dari tampilan.
Django juga memiliki komponen lain, termasuk tetapi tidak terbatas pada:
Pengaturan, yang mengkonfigurasi aplikasi seperti yang kita bahas.
URL, yang merupakan pola yang diikuti pengguna untuk mendapatkan akses ke bagian -bagian tertentu dari aplikasi web.
Formulir, yang menentukan bagaimana informasi yang dikirim ke server ditangani dan diterjemahkan ke database serta kepada pengguna. Ini adalah dasar dari pemrosesan informasi di sisi server, dan dapat menerima semua jenis informasi yang disimpan komputer, terutama string teks, angka, dan boolean benar/palsu (biasanya kotak centang).
Templat, yang merupakan kode HTML dan bahasa templat dan menjembatani kesenjangan antara Python dan HTML, yang berarti informasi Python dapat dilayani sebagai kode HTML yang dapat diakses siapa saja dan dapat mengamankan situs web dengan akses terbatas, sambil membuat kode python dapat diakses ke web dan berguna untuk berbagai tujuan pada perangkat jarak jauh yang tidakEed berada di dekat server.
File statis, yang biasanya merupakan javascript dan perpustakaan yang dilayani dan ditautkan oleh server dengan templat.
File media, yang disajikan server atau di -host secara eksternal, atau hanya ditulis ke server sebelum diproses dan diposting ke server lain (ember) untuk hosting.
Middleware, yang merupakan potongan kode yang dijalankan pada saat yang sama dengan setiap tampilan dan dianggap "termasuk" dalam tampilan.
Prosesor konteks, yang memproses konteks setiap tampilan dan digunakan untuk menambahkan konteks tambahan.
Tes, yang memvalidasi bahwa pengguna atau permintaan melewati persyaratan tertentu sebelum tampilan diberikan.
Konsumen, yang menentukan bagaimana websockets menangani dan menanggapi komunikasi.
Admin, yang digunakan untuk mendaftarkan model sehingga dapat dimanipulasi secara rinci dalam halaman admin Django, di mana basis data dapat dikelola melalui antarmuka grafis.
Seledri, yang mendefinisikan tugas -tugas asinkron bagian -bagian dari kode Django dapat dimulaisebelum segera melanjutkan ke tugas atau baris kode berikutnya.
Django dapat memiliki banyak komponen lain, yang akan kita bahas secara rinci di sini. Ada banyak cara untuk membuat Django lebih fungsional, menambahkan websockets, yang cepat dan saluran komunikasi ramping, seledri, yang mengeksekusi tugas asinkron, dan banyak perangkat lunak lainnya untuk memperluas Django, terutama dalam fungsi tampilan, di mana sebagian besar dari Kode dijalankan. Fungsi tampilan adalah kunci karena mereka biasanya mendeklarasikan setiap bagian kode yang khusus untuk pola URL tertentu, atau bagian dari server.
Pertama, mari kita jelajahi fungsi tampilan. Fungsi tampilan dimulai dengan impor yang menunjukkan kode yang akan digunakan dalam tampilan, dan didefinisikan menggunakan definisi atau kelas fungsi reguler. Tampilan paling sederhana didefinisikan oleh definisi definisi def, dan mengembalikan httprespons dengan templat dasar. Mari kita mulai dengan mendefinisikan pandangan dasar untuk mengembalikan teks "Hello World". Ingatlah bahwa setiap kali Anda menambahkanSetelah pernyataan seperti def, jika, while, for, dll, Anda perlu menambahkan 4 spasi untuk masing -masing definisi sebelumnya yang ingin Anda terapkan pada fungsi Anda. Kami akan membahas apa artinya masing -masing segera.
Dari direktori situs kami, edit file feed/views.py menggunakan nano dan tambahkan baris berikut ke ujung
from django.http import HttpResponse
def hello(request):
return HttpResponse('hello world')
HTTPResponse Django merespons dengan string teks, dilambangkan dengan pembukaan dan penutupan '. Setiap kali Anda meneruskan informasi ke fungsi atau kelas, seperti permintaan atau string, Anda perlu menggunakan tanda kurung (, membuka dan menutup).
Ini belum semua yang kita butuhkan untuk melihat pandangan kita. Tentu saja, kami belum memberi tahu server di mana tampilan tepatnya, kami masih perlu mendefinisikan jalur yang harus diterjemahkan oleh tampilan. Mari kita mulai dengan mendefinisikan jalur dasar di aplikasi/urls.py, dan kita akan masuk ke grup jalur nanti.
Di App/Urls.py, tambahkan baris setelah pernyataan impor setelah awal mengimpor tampilan yang baru saja kami buat.
from feed import views as feed_views
Sekarang, mari kita tentukan pola tampilan. Pola tampilan memiliki tiga komponen, komponen jalur, yang memberi tahu server di mana tampilan ada di dalam server (jalur URL yang pengguna ketik ke bilah navigasi untuk memasukkan halaman web), komponen tampilan tempat tampilan ditentukan, dan a Nama yang ramah untuk tampilan sehingga mudah untuk mengambil polanya saat bekerja dengan templat, terutama sehingga namanya dapat diubah dan diperbarui jika perlu memberi ruang untuk tampilan lain atau mengambil nama yang lebih logis. Masuk akal untuk melakukan hal -hal dengan cara ini dan menjadi fleksibel, karena basis kode Anda akan menjadi lingkungan yang terus berubah yang membutuhkan fleksibilitas dan improvisasi agar berharga dan mudah dikerjakan. Inilah tampilan Anda nantinya, Anda dapat menambahkan ini ke urlpatterns = [bagian aplikasi/urls.py. Pola tampilan didefinisikan dengan tiga komponen yang dijelaskan di atas, dan fungsi yang disebut jalur. Pola URL Anda adalah daftar, jadi pastikan untuk selalu mengakhiri setiap item di dalamnyadengan koma, karena ini memisahkan masing -masing. Setiap item juga harus menggunakan baris baru, sekali lagi dengan empat spasi sebelumnya, seperti aplikasi di settings.py. Kami akan menentukan komponen pertama tampilan dengan fungsi string kosong, untuk membuat tampilan yang berjalan pada direktori root server web. Urls.py Anda sekarang harus terlihat seperti
from feed import views as feed_views
urlpatterns = [
path('', feed_views.hello, name='hello'),
]
Ini adalah dasar untuk membuat situs web dengan Django yang sepenuhnya statis. Untuk membuat situs web yang lebih dinamis di mana kita dapat memulai informasi caching, seperti gambar, video, audio dan banyak lagi, kita perlu menggunakan model, yang akan kita jelajahi selanjutnya. Untuk saat ini, mari kita periksa kode kami dan jalankan server. Untuk memeriksa kode untuk kesalahan, jalankan:
python manage.py check
Jika ada pesan kesalahan, Anda harus dengan cermat meninjau perubahan yang Anda buat ke aplikasi Anda dan melihat apakah ada sesuatu yang perlu diperbaiki, seperti ruang asing atau kurang, karakter tambahan, string yang tidak tertutup, kesalahan ketik apa pun, secara tidak sengaja karakter yang dihapus, atau apa pun. Membaca pesan kesalahan (jika Anda memilikinya), Anda harus dapat melihat jalur ke file yang Anda buat atau edit bersama dengan nomor baris, jadi lihat ke dalam file dan baris itu dan lihat apakah Anda dapat memperbaiki apa pun yang ada di sana . Jika Anda telah memperbaiki masalah, jalankan perintah di atas lagi. Ketika perangkat lunak Anda siap berjalan dan berfungsi, Anda akan melihat output “Pemeriksaan Sistem mengidentifikasi tidak ada masalah.” Sekarang Anda siap untuk pergi. Jalankan server dengan:
python manage.py runserver 0.0.0.0:8000
Sekarang buka browser web dan navigasikan ke http: // localhost: 8000. Anda harus melihat teks yang dikembalikan dalam tanda kurung dan kutipan fungsi HTTPRESPONSE dalam pandangan Anda. Ini hanya contoh dasar, tetapi jika Anda berhasil sejauh ini, Anda memahami dasar -dasar bagaimana Linux, Bash, Python, dan Django bekerja. Mari kita gali lebih dalam dalam beberapa pemodelan basis data, dan jelajahi kekuatan kelas Python dalam menyimpan informasi. Kemudian, kita akan mulai menguasai HTML dan CSS sebelum kita membuat situs kita sepenuhnya ditampilkan, fleksibel, dan aman menggunakan JavaScript dan pembelajaran mesin.
Kelas disimpan di model.py aplikasi Anda. Menggunakan nano, edit aplikasi/model.py dan tambahkan kelas baru. Kelas didefinisikan dengan definisi kelas dan disahkan superclass yang diwarisi, dalam hal ini model.model. Nama kelas muncul setelah definisi kelas, dan setelah definisi kelas A: (usus besar) digunakan, sebelum atribut dan definisi fungsi yang terkait dengan kelas dilambangkan di bawah ini. Kelas kamiMembutuhkan ID yang dapat kita gunakan untuk mengambilnya dan membuatnya unik, dan juga membutuhkan bidang teks untuk menyimpan beberapa informasi. Nanti kita dapat menambahkan cap waktu, file, boolean (definisi benar atau salah yang dapat membantu kode kita membuat keputusan tentang apa yang harus dilakukan dengan model, dan dapat digunakan untuk mengurutkannya), instance untuk mengikat model ke pengguna yang dicatat ke server, dan banyak lagi. Mari kita buka paket kodenya
from django.db import models # Impor yang digunakan untuk mendefinisikan kelas kami dan atributnya
class Post(models.Model): # Definisi kelas kita sendiri
id = models.AutoField(primary_key=True) # ID dari model kami, kunci yang dihasilkan secara otomatis yang akan memungkinkan kami menanyakan model, tetap unik, dan berguna ketika kami perlu berinteraksi dengan model setelah dibuat.
text = models.TextField(default='') # Atribut toko kelas kami, dalam hal ini, beberapa teks, default ke string kosong.
Tutup dan simpan file seperti yang kami lakukan sebelumnya untuk menyelesaikannya.
Ada banyak bidang dan opsi lain yang akan kami jelajahi ketika kami memperbarui kelas ini seiring perkembangan aplikasi kami, tetapi ini adalah kebutuhan dasar untuk membuat aplikasi untuk memposting beberapa teks. Namun, model ini tidak akan bekerja sendiri. Seperti yang dijelaskan sebelumnya, kami akan membutuhkan tampilan khusus dan pola URL khusus untuk membuat model ini berfungsi, dan kami juga membutuhkan formulir bersama dengan templat. Mari kita jelajahi formulir terlebih dahulu.
Untuk mendefinisikan formulir, edit aplikasi/forms.py dengan nano dan tambahkan baris berikut. Kami akan membutuhkan dua impor, kelas formulir kami, serta model yang kami buat (feed.models.post), definisi kelas yang mirip dengan model, dan bidang bersama dengan subkelas yang disebut meta yang akan menentukan model yang berinteraksi berinteraksi dengan. Formulir ini juga dapat memiliki fungsi inisialisasi yang mengaturnya berdasarkan informasi dalam permintaan, model atau sebaliknya, kami akan mengeksplorasi ini nanti.
Bentuk model sangat berguna karena mereka dapat membuat model atau juga mengedit model,Jadi kami akan menggunakannya untuk keduanya. Mari kita tentukan satu di forms.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',)
Ini adalah dasar dari seperti apa bentuk dan model itu. Bentuk model ini dapat digunakan untuk membuat instantiate atau mengedit posting, mengubah teks yang dikandungnya. Kami akan melihat mengintegrasikan formulir ini ke dalam tampilan berikutnya. Pertama, mari kita buat migrasi dan migrasi database sehingga kode kita dapat berinteraksi dengan model saat berjalan. Untuk melakukan ini, jalankan perintah berikut:
python manage.py makemigrations
python manage.py migrate
Ini akan memakan waktu satu menit untuk dieksekusi, tetapi begitu terjadi, itu akan memungkinkan Anda untuk mengakses model di tampilan, middleware, atau di mana pun di perangkat lunak. Mari kita lanjutkan dengan membuat tampilan di mana kita dapat melihat model kita. Edit feed/views.py dan tambahkan kode berikut, sebagaimana dicatat. Anda tidak perlu menambahkan apa pun setelah tanda #, kode itu adalah komentar yang digunakan untuk menunjukkan informasi tentang kode tersebut. Kami akan mulai dengan mengimpor model kami dalam tampilan, dan menambahkannya ke konteks di mana kami dapat menjadikannya dalam templat sebagai daftar untuk ditampilkan. Selanjutnya, kami akan menambahkan templat di mana kami dapat membuat formulir dan model dengan tombol untuk membuat objek baru berdasarkan model dan mempostingnya ke server. Ini kedengarannya rumit, jadi mari kita ambil langkah demi langkah. Sebelum kita menyelesaikan tampilan, mari kita buat templat yang hanya membuat model dan pastikan kita dapat melihatnya dengan membuat posting baru di shell. Beginilah tampilan itu seharusnya:
from feed.models import Post
from django.shortcuts import render, redirect
from django.urls import reverse
def feed(request):
posts = Post.objects.all() # Permintaan semua posting dalam database sejauh ini
return render(request, 'feed/feed.html', {
'posts': posts,
})
Ini semua terlihat sangat sederhana sampai kita sampai ke bawah. Render, nilai yang dikembalikan oleh fungsi alih -alih dalam respons HTTP seperti contoh sebelumnya, selalu mengambil permintaan sebagai input pertama, menerima konteks (dalam hal ini posting dalam database), yang sekarang dapat diterjemahkan dalam templat , dan mengembalikan templat yang ditentukan dalam fungsi. Templat akan menjadi dokumen HTML dengan sedikit bahasa yang disebut Jinja2, yang menjadikan informasi Python ke dalam HTML.
Untuk mulai membuat template, buat dua direktori dalam feed.
mkdir feed/templates
mkdir feed/templates/feed
Selanjutnya, edit templat di direktori di atas, umpan/templat/pakan, dan tambahkan kode untuk contoh ini. Mari kita lihat templat untuk contoh ini.
<!doctype HTML>
<html>
<body>
<legend>Feed</legend>
<hr>
{% for post in posts %}
<p>{{ post.text }}</p>
{% endfor %}
</body>
</html>
Ini adalah templat yang sangat sederhana. Ini mendefinisikan pembukaan dan penutupan tag HTML, tag tipe dokumen, tag tubuh dengan judul legenda, tag istirahat yang menambahkan garis kecil di layar, dan loop yang membuat setiap posting dalam daftar posting sebagai paragraf di template. Hanya ini yang diperlukan untuk membuat posting, tetapi belum ada dalam database. Mari kita buat beberapa dengan shell. Kita bisa menjalankan shell dengan kelola.py
python manage.py shell
Sekarang, mari kita impor model posting kita
from feed.models import Post
Selanjutnya, kami akan membuat posting sederhana dengan string dan keluar dari shell. String bisa apa saja, selama itu teks yang valid.
Post.objects.create(text='hello world')
exit()
Terakhir, kita perlu menambahkan pola URL ke pakan kita. Karena aplikasi umpan kami akan menggunakan beberapa URL dan kami ingin menjaga ukuran file kecil, mari kita buat URLS lokal di aplikasi feed kami yang terlihat seperti ini:
from django.urls import path
from . import views
urlpatterns = [
path('', views.feed, name='feed'),
]
Kami juga perlu mengedit urls.py di aplikasi dasar, apa pun yang kami putuskan untuk menyebutnya, ini adalah direktori pertama yang kami buat. Edit aplikasi/app.py dan tambahkan yang berikut ini ke pola URL
from django.urls import include # di atas
urlpatterns = [
# ... kode sebelumnya di sini
path('feed/', include(('feed.urls'), namespace='feed')),
]
Sekarang, ketika kami menjalankan server dengan python manager.py runserver, kami akan melihat halaman yang kami buat karena kami memiliki model, tampilan dan templat serta pola URL, bersama dengan item dalam database. Selanjutnya, mari kita terapkan formulir yang kami buat dan mulai membuat posting kami sendiri. Tetapi sebelum kita menulis terlalu banyak kode, mari kita buat cadangan menggunakan skrip yang kita tulis sebelumnya, cadangan. Jalankan skrip ini di shell, tunggu beberapa saat, dan semua kode akan didukung ke repositori git kami.
backup
Menerapkan formulir relatif sederhana. Kami akan mengimpor formulir kami, menambahkan penangan permintaan pos ke tampilan, dan menyimpan pos di database sebelum mengarahkan ulang ke tampilan yang sama. Kita dapat menggunakan fungsi pengalihan yang sudah kita impor, dan fungsi lain yang disebut terbalik untuk mendapatkan URL untuk pola tampilan. Kami akan menanyakan ini dengan string 'feed: feed' karena namespace dari pola yang disertakan adalah umpan, dan pandangan juga disebut feed.
from feed.forms import PostForm
def feed(request):
posts = Post.objects.all() # Permintaan semua posting dalam database sejauh ini
if request.method == 'POST': # Tangani Permintaan Posting
form = PostForm(request.POST) # Buat instance formulir dan simpan data untuk itu
if form.is_valid(): # Validasi formulir
form.save() # Simpan objek baru
return redirect(reverse('feed:feed')) # Redireksi ke URL yang sama dengan permintaan GET
return render(request, 'feed/feed.html', {
'form': PostForm(), # Pastikan untuk meneruskan formulir ke dalam konteks sehingga kita dapat membuatnya.
'posts': posts,
})
Sekarang, kita perlu memperbarui templat untuk memperhitungkan formulir baru. Kita bisa melakukan ini dengan menggunakan
https://glamgirlx.com/id/practical-web-based-deep
https://glamgirlx.com/id/practical-web-based-deep -
Tinggalkan saya tip dalam bitcoin menggunakan alamat ini: 3KhDWoSve2N627RiW8grj6XrsoPT7d6qyE
© Glam Girl X 2025