https://github.com/billy0402/django-bookstore
A learning project from NTUB Django course.
https://github.com/billy0402/django-bookstore
bootstrap4 course django django-rest-framework python restful-api sqlite web
Last synced: 3 months ago
JSON representation
A learning project from NTUB Django course.
- Host: GitHub
- URL: https://github.com/billy0402/django-bookstore
- Owner: billy0402
- Created: 2019-09-27T14:48:50.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-09-28T00:52:24.000Z (over 6 years ago)
- Last Synced: 2025-08-01T05:37:27.565Z (11 months ago)
- Topics: bootstrap4, course, django, django-rest-framework, python, restful-api, sqlite, web
- Language: Python
- Homepage:
- Size: 41 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# django-bookstore
## environment
- [macOS 10.14.6](https://www.apple.com/tw/macos/mojave/)
- [PyCharm 2019.2.3](https://www.jetbrains.com/pycharm/)
- [Python 3.7.4](https://www.python.org/)
- [Django 2.2.5](https://github.com/django/django)
- [Django REST framework 3.10.3](https://github.com/encode/django-rest-framework)
## ORM query
```python
# import
from books.models import Book
Book
books.models.Book
```
### INSERT ONE
```python
# INSERT INTO books_book(name, price, introduction) VALUES ('Hello', 150, 'This is a book.');
Book.objects.create(name="Hello", price=150, introduction='This is a book.')
# INSERT INTO books_book(name, price, introduction) VALUES ('Hello2', 150, 'This is a book.');
Book.objects.create(name="Hello2", price=150, introduction='This is a book.')
# INSERT INTO books_book(name, price, introduction) VALUES ('Hello3', 150, 'This is a book.');
Book.objects.create(name="Hello3", price=150, introduction='This is a book.')
```
### SELECT ALL
```python
# SELECT * FROM books_book;
Book.objects.all()
, , ]>
Book.objects.all().query
print(Book.objects.all().query)
SELECT "books_book"."id", "books_book"."name", "books_book"."price", "books_book"."introduction" FROM "books_book"
```
### SELECT ONE
```python
# SELECT * FROM books_book WHERE id=1;
Book.objects.get(pk=1)
print(Book.objects.get(pk=1))
Book object (1)
# SELECT * FROM books_book WHERE price=150;
Book.objects.filter(price=150)
, , ]>
# SELECT * FROM books_book WHERE price=150 LIMIT 2;
Book.objects.filter(id__lte=2)
, ]>
# SELECT * FROM books_book ORDER BY id;
Book.objects.order_by('id')
, , ]>
# SELECT * FROM books_book ORDER BY id DESC;
Book.objects.order_by('-id')
, , ]>
# SELECT * FROM books_book ORDER BY RAND();
Book.objects.order_by('?')
, , ]>
```
### UPDATE ONE
```python
# SELECT * FROM books_book WHERE id=1;
Book.objects.get(pk=1)
# SELECT id FROM books_book WHERE id=1;
book.id
1
# UPDATE books_book SET price=300 WHERE id=1;
book.price = 300
book.save()
```
### UPDATE MANY
```python
# INSERT INTO books_book(name, price, introduction) VALUES ('Hello2', 150, 'This is a book.');
Book.objects.create(name="Hello2", price=150, introduction='This is a book.')
# INSERT INTO books_book(name, price, introduction) VALUES ('Hello4', 200, 'This is a book.');
Book.objects.create(name="Hello4", price=200, introduction='This is a book.')
# INSERT INTO books_book(name, price, introduction) VALUES ('Hello5', 100, 'This is a book.');
Book.objects.create(name="Hello5", price=100, introduction='This is a book.')
# INSERT INTO books_book(name, price, introduction) VALUES ('Hello6', 500, 'This is a book.');
Book.objects.create(name="Hello6", price=500, introduction='This is a book.')
# INSERT INTO books_book(name, price, introduction) VALUES ('Hello7', 250, 'This is a book.');
Book.objects.create(name="Hello7", price=250, introduction='This is a book.')
# SELECT * FROM books_book WHERE price=200;
Book.objects.filter(price=200)
]>
# SELECT * FROM books_book WHERE price>=200;
Book.objects.filter(price__gte=200)
, , , ]>
# UPDATE books_book SET name='World' WHERE price>=200;
Book.objects.filter(price__gte=200).update(name='World')
4
```
### DELETE ONE
```python
# SELECT * FROM books_book WHERE id=2;
book = Book.objects.get(pk=2)
# SELECT id FROM books_book WHERE id=2;
book.id
2
# DELETE FROM books_book WHERE id=2;
book.delete()
(1, {'books.Book': 1})
```