{"id":20244653,"url":"https://github.com/billy0402/django-bookstore","last_synced_at":"2026-04-07T08:01:43.151Z","repository":{"id":165279265,"uuid":"211341584","full_name":"billy0402/django-bookstore","owner":"billy0402","description":"A learning project from NTUB Django course. ","archived":false,"fork":false,"pushed_at":"2019-09-28T00:52:24.000Z","size":42,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-01T05:37:27.565Z","etag":null,"topics":["bootstrap4","course","django","django-rest-framework","python","restful-api","sqlite","web"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/billy0402.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-09-27T14:48:50.000Z","updated_at":"2024-04-13T17:36:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"8339e9d5-5722-4348-a6d4-c604f3a3a2de","html_url":"https://github.com/billy0402/django-bookstore","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/billy0402/django-bookstore","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/billy0402%2Fdjango-bookstore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/billy0402%2Fdjango-bookstore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/billy0402%2Fdjango-bookstore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/billy0402%2Fdjango-bookstore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/billy0402","download_url":"https://codeload.github.com/billy0402/django-bookstore/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/billy0402%2Fdjango-bookstore/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31504897,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T03:10:19.677Z","status":"ssl_error","status_checked_at":"2026-04-07T03:10:13.982Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bootstrap4","course","django","django-rest-framework","python","restful-api","sqlite","web"],"created_at":"2024-11-14T09:16:37.878Z","updated_at":"2026-04-07T08:01:43.141Z","avatar_url":"https://github.com/billy0402.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# django-bookstore\n\n## environment\n- [macOS 10.14.6](https://www.apple.com/tw/macos/mojave/)\n- [PyCharm 2019.2.3](https://www.jetbrains.com/pycharm/)\n- [Python 3.7.4](https://www.python.org/)\n- [Django 2.2.5](https://github.com/django/django)\n- [Django REST framework 3.10.3](https://github.com/encode/django-rest-framework)\n\n## ORM query\n```python\n# import\nfrom books.models import Book\n\nBook\nbooks.models.Book\n```\n\n### INSERT ONE\n```python\n# INSERT INTO books_book(name, price, introduction) VALUES ('Hello', 150, 'This is a book.');\nBook.objects.create(name=\"Hello\", price=150, introduction='This is a book.')\n\u003cBook: Book object (1)\u003e\n\n# INSERT INTO books_book(name, price, introduction) VALUES ('Hello2', 150, 'This is a book.');\nBook.objects.create(name=\"Hello2\", price=150, introduction='This is a book.')\n\u003cBook: Book object (2)\u003e\n\n# INSERT INTO books_book(name, price, introduction) VALUES ('Hello3', 150, 'This is a book.');\nBook.objects.create(name=\"Hello3\", price=150, introduction='This is a book.')\n\u003cBook: Book object (3)\u003e\n```\n\n### SELECT ALL\n```python\n# SELECT * FROM books_book;\nBook.objects.all()\n\u003cQuerySet [\u003cBook: Book object (1)\u003e, \u003cBook: Book object (2)\u003e, \u003cBook: Book object (3)\u003e]\u003e\n\nBook.objects.all().query\n\u003cdjango.db.models.sql.query.Query at 0x10ed36940\u003e\n\nprint(Book.objects.all().query)\nSELECT \"books_book\".\"id\", \"books_book\".\"name\", \"books_book\".\"price\", \"books_book\".\"introduction\" FROM \"books_book\"\n```\n\n### SELECT ONE\n```python\n# SELECT * FROM books_book WHERE id=1;\nBook.objects.get(pk=1)\n\u003cBook: Book object (1)\u003e\n\nprint(Book.objects.get(pk=1))\nBook object (1)\n\n# SELECT * FROM books_book WHERE price=150;\nBook.objects.filter(price=150)\n\u003cQuerySet [\u003cBook: Book object (1)\u003e, \u003cBook: Book object (2)\u003e, \u003cBook: Book object (3)\u003e]\u003e\n\n# SELECT * FROM books_book WHERE price=150 LIMIT 2;\nBook.objects.filter(id__lte=2)\n\u003cQuerySet [\u003cBook: Book object (1)\u003e, \u003cBook: Book object (2)\u003e]\u003e\n\n# SELECT * FROM books_book ORDER BY id;\nBook.objects.order_by('id')\n\u003cQuerySet [\u003cBook: Book object (1)\u003e, \u003cBook: Book object (2)\u003e, \u003cBook: Book object (3)\u003e]\u003e\n\n# SELECT * FROM books_book ORDER BY id DESC;\nBook.objects.order_by('-id')\n\u003cQuerySet [\u003cBook: Book object (3)\u003e, \u003cBook: Book object (2)\u003e, \u003cBook: Book object (1)\u003e]\u003e\n\n# SELECT * FROM books_book ORDER BY RAND();\nBook.objects.order_by('?')\n\u003cQuerySet [\u003cBook: Book object (3)\u003e, \u003cBook: Book object (1)\u003e, \u003cBook: Book object (2)\u003e]\u003e\n```\n\n### UPDATE ONE\n```python\n# SELECT * FROM books_book WHERE id=1;\nBook.objects.get(pk=1)\n\n# SELECT id FROM books_book WHERE id=1;\nbook.id\n1\n\n# UPDATE books_book SET price=300 WHERE id=1;\nbook.price = 300\n\nbook.save()\n```\n\n### UPDATE MANY\n```python\n# INSERT INTO books_book(name, price, introduction) VALUES ('Hello2', 150, 'This is a book.');\nBook.objects.create(name=\"Hello2\", price=150, introduction='This is a book.')\n\u003cBook: Book object (4)\u003e\n\n# INSERT INTO books_book(name, price, introduction) VALUES ('Hello4', 200, 'This is a book.');\nBook.objects.create(name=\"Hello4\", price=200, introduction='This is a book.')\n\u003cBook: Book object (5)\u003e\n\n# INSERT INTO books_book(name, price, introduction) VALUES ('Hello5', 100, 'This is a book.');\nBook.objects.create(name=\"Hello5\", price=100, introduction='This is a book.')\n\u003cBook: Book object (6)\u003e\n\n# INSERT INTO books_book(name, price, introduction) VALUES ('Hello6', 500, 'This is a book.');\nBook.objects.create(name=\"Hello6\", price=500, introduction='This is a book.')\n\u003cBook: Book object (7)\u003e\n\n# INSERT INTO books_book(name, price, introduction) VALUES ('Hello7', 250, 'This is a book.');\nBook.objects.create(name=\"Hello7\", price=250, introduction='This is a book.')\n\u003cBook: Book object (8)\u003e\n\n# SELECT * FROM books_book WHERE price=200;\nBook.objects.filter(price=200)\n\u003cQuerySet [\u003cBook: Book object (5)\u003e]\u003e\n\n# SELECT * FROM books_book WHERE price\u003e=200;\nBook.objects.filter(price__gte=200)\n\u003cQuerySet [\u003cBook: Book object (1)\u003e, \u003cBook: Book object (5)\u003e, \u003cBook: Book object (7)\u003e, \u003cBook: Book object (8)\u003e]\u003e\n\n# UPDATE books_book SET name='World' WHERE price\u003e=200;\nBook.objects.filter(price__gte=200).update(name='World')\n4\n```\n\n### DELETE ONE\n```python\n# SELECT * FROM books_book WHERE id=2;\nbook = Book.objects.get(pk=2)\n\n# SELECT id FROM books_book WHERE id=2;\nbook.id\n2\n\n# DELETE FROM books_book WHERE id=2;\nbook.delete()\n(1, {'books.Book': 1})\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbilly0402%2Fdjango-bookstore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbilly0402%2Fdjango-bookstore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbilly0402%2Fdjango-bookstore/lists"}