-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
60a5954
commit 83f9c09
Showing
14 changed files
with
1,350 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
--- | ||
sidebar_label: Tugas 3 | ||
sidebar_position: 3 | ||
Path: docs/tugas-3 | ||
--- | ||
|
||
# Tugas 3: Implementasi Form dan Data Delivery pada Django | ||
|
||
Pemrograman Berbasis Platform (CSGE602022) — diselenggarakan oleh Fakultas Ilmu Komputer Universitas Indonesia, Semester Ganjil 2024/2025 | ||
|
||
--- | ||
|
||
## Deskripsi Tugas | ||
|
||
Pada tugas ini, kamu akan menjalankan implementasi konsep data delivery serta menerapkan beberapa konsep yang telah dipelajari selama sesi tutorial. | ||
|
||
|
||
## Checklist Tugas | ||
|
||
*Checklist* untuk tugas ini adalah sebagai berikut. | ||
- [ ] Membuat input `form` untuk menambahkan objek model pada app sebelumnya. | ||
- [ ] Tambahkan 4 fungsi `views` baru untuk melihat objek yang sudah ditambahkan dalam format XML, JSON, XML *by ID*, dan JSON *by ID*. | ||
- [ ] Membuat routing URL untuk masing-masing `views` yang telah ditambahkan pada poin 2. | ||
- [ ] Menjawab beberapa pertanyaan berikut pada `README.md` pada *root folder*. | ||
- [ ] Jelaskan mengapa kita memerlukan _data delivery_ dalam pengimplementasian sebuah platform? | ||
- [ ] Menurutmu, mana yang lebih baik antara XML dan JSON? Mengapa JSON lebih populer dibandingkan XML? | ||
- [ ] Jelaskan fungsi dari method `is_valid()` pada form Django dan mengapa kita membutuhkan method tersebut? | ||
- [ ] Mengapa kita membutuhkan `csrf_token` saat membuat form di Django? Apa yang dapat terjadi jika kita tidak menambahkan `csrf_token` pada form Django? Bagaimana hal tersebut dapat dimanfaatkan oleh penyerang? | ||
- [ ] Jelaskan bagaimana cara kamu mengimplementasikan *checklist* di atas secara *step-by-step* (bukan hanya sekadar mengikuti tutorial). | ||
- [ ] Mengakses keempat URL di poin 2 menggunakan Postman, membuat *screenshot* dari hasil akses URL pada Postman, dan menambahkannya ke dalam `README.md`. | ||
- [ ] Melakukan `add`-`commit`-`push` ke GitHub. | ||
|
||
## Tenggat Waktu Pengerjaan | ||
|
||
Tenggat waktu pengerjaan Tugas 3 adalah hari **Rabu, 18 September, pukul 12.00 siang.** | ||
|
Large diffs are not rendered by default.
Oops, something went wrong.
33 changes: 33 additions & 0 deletions
33
...n/docusaurus-plugin-content-docs-assignments/current/individual/assignment-3.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
--- | ||
sidebar_label: Assignment 3 | ||
sidebar_position: 3 | ||
Path: assignment/individual/assignment-3 | ||
--- | ||
|
||
# Assignment 3: Forms and Data Delivery Implementation in Django | ||
|
||
Platform-Based Programming (CSGE602022) — Organized by the Faculty of Computer Science Universitas Indonesia, Odd Semester 2024/2025 | ||
|
||
## Assignment Description | ||
|
||
In this assignment, you have to implement the data delivery concept and apply several concepts learned in the tutorial. | ||
|
||
Checklists for this assignment are: | ||
|
||
- [ ] Create a `form` input to add a model object to the previous app. | ||
- [ ] Add 4 `views` to view the added objects in XML, JSON, XML by ID, and JSON by ID formats. | ||
- [ ] Create URL routing for each of the views added in point 2. | ||
- [ ] Answer the following questions in `README.md` in the root folder. | ||
- [ ] Explain why we need data delivery in implementing a platform. | ||
- [ ] In your opinion, which is better, XML or JSON? Why is JSON more popular than XML? | ||
- [ ] Explain the functional usage of `is_valid()` method in Django forms. Also explain why we need the method in forms. | ||
- [ ] Why do we need `csrf_token` when creating a form in Django? What could happen if we did not use `csrf_token` on a Django form? How could this be leveraged by an attacker? | ||
- [ ] Explain how you implemented the *checklist* above step-by-step (not just following the tutorial). | ||
- [ ] Access the four URLs in point 2 using Postman, take screenshots of the results in Postman, and add them to `README.md`. | ||
- [ ] Perform `add`-`commit`-`push` to GitHub. | ||
|
||
## Deadline | ||
|
||
The deadline for Assignment 3 is **Wednesday, 18th September, 2024, at 12:00 p.m.** | ||
|
||
We will check the last commit of the lab assignment repository, so you do not need to submit the repository link separately. |
Oops, something went wrong.