Coverage for src/products/migrations/0001_initial.py: 100%

8 statements  

« prev     ^ index     » next       coverage.py v7.9.2, created at 2025-08-04 12:59 +0300

1# Generated by Django 5.2.1 on 2025-07-21 16:26 

2 

3import django.core.validators 

4import django.db.models.deletion 

5from django.conf import settings 

6from django.db import migrations, models 

7 

8 

9class Migration(migrations.Migration): 

10 

11 initial = True 

12 

13 dependencies = [ 

14 ('contenttypes', '0002_remove_content_type_name'), 

15 migrations.swappable_dependency(settings.AUTH_USER_MODEL), 

16 ] 

17 

18 operations = [ 

19 migrations.CreateModel( 

20 name='Collection', 

21 fields=[ 

22 ( 

23 'id', 

24 models.BigAutoField( 

25 auto_created=True, 

26 primary_key=True, 

27 serialize=False, 

28 verbose_name='ID', 

29 ), 

30 ), 

31 ('name', models.CharField(max_length=30, unique=True)), 

32 ], 

33 options={ 

34 'abstract': False, 

35 }, 

36 ), 

37 migrations.CreateModel( 

38 name='Color', 

39 fields=[ 

40 ( 

41 'id', 

42 models.BigAutoField( 

43 auto_created=True, 

44 primary_key=True, 

45 serialize=False, 

46 verbose_name='ID', 

47 ), 

48 ), 

49 ('name', models.CharField(max_length=30, unique=True)), 

50 ], 

51 options={ 

52 'abstract': False, 

53 }, 

54 ), 

55 migrations.CreateModel( 

56 name='Metal', 

57 fields=[ 

58 ( 

59 'id', 

60 models.BigAutoField( 

61 auto_created=True, 

62 primary_key=True, 

63 serialize=False, 

64 verbose_name='ID', 

65 ), 

66 ), 

67 ('name', models.CharField(max_length=30, unique=True)), 

68 ], 

69 options={ 

70 'abstract': False, 

71 }, 

72 ), 

73 migrations.CreateModel( 

74 name='Size', 

75 fields=[ 

76 ( 

77 'id', 

78 models.BigAutoField( 

79 auto_created=True, 

80 primary_key=True, 

81 serialize=False, 

82 verbose_name='ID', 

83 ), 

84 ), 

85 ('name', models.CharField(max_length=30, unique=True)), 

86 ], 

87 options={ 

88 'abstract': False, 

89 }, 

90 ), 

91 migrations.CreateModel( 

92 name='Stone', 

93 fields=[ 

94 ( 

95 'id', 

96 models.BigAutoField( 

97 auto_created=True, 

98 primary_key=True, 

99 serialize=False, 

100 verbose_name='ID', 

101 ), 

102 ), 

103 ('name', models.CharField(max_length=30, unique=True)), 

104 ], 

105 options={ 

106 'abstract': False, 

107 }, 

108 ), 

109 migrations.CreateModel( 

110 name='Inventory', 

111 fields=[ 

112 ( 

113 'id', 

114 models.BigAutoField( 

115 auto_created=True, 

116 primary_key=True, 

117 serialize=False, 

118 verbose_name='ID', 

119 ), 

120 ), 

121 ('quantity', models.PositiveIntegerField(default=5)), 

122 ( 

123 'price', 

124 models.DecimalField( 

125 decimal_places=2, 

126 max_digits=7, 

127 validators=[ 

128 django.core.validators.MinValueValidator(0) 

129 ], 

130 ), 

131 ), 

132 ('object_id', models.PositiveIntegerField()), 

133 ( 

134 'content_type', 

135 models.ForeignKey( 

136 on_delete=django.db.models.deletion.CASCADE, 

137 to='contenttypes.contenttype', 

138 ), 

139 ), 

140 ( 

141 'size', 

142 models.ForeignKey( 

143 on_delete=django.db.models.deletion.CASCADE, 

144 to='products.size', 

145 ), 

146 ), 

147 ], 

148 options={ 

149 'ordering': ['id'], 

150 }, 

151 ), 

152 migrations.CreateModel( 

153 name='Neckwear', 

154 fields=[ 

155 ( 

156 'id', 

157 models.BigAutoField( 

158 auto_created=True, 

159 primary_key=True, 

160 serialize=False, 

161 verbose_name='ID', 

162 ), 

163 ), 

164 ('first_image', models.URLField(unique=True)), 

165 ('second_image', models.URLField(unique=True)), 

166 ('created_at', models.DateTimeField(auto_now_add=True)), 

167 ( 

168 'collection', 

169 models.ForeignKey( 

170 on_delete=django.db.models.deletion.CASCADE, 

171 to='products.collection', 

172 ), 

173 ), 

174 ( 

175 'color', 

176 models.ForeignKey( 

177 on_delete=django.db.models.deletion.CASCADE, 

178 to='products.color', 

179 ), 

180 ), 

181 ( 

182 'metal', 

183 models.ForeignKey( 

184 on_delete=django.db.models.deletion.CASCADE, 

185 to='products.metal', 

186 ), 

187 ), 

188 ( 

189 'stone', 

190 models.ForeignKey( 

191 on_delete=django.db.models.deletion.CASCADE, 

192 to='products.stone', 

193 ), 

194 ), 

195 ], 

196 options={ 

197 'abstract': False, 

198 }, 

199 ), 

200 migrations.CreateModel( 

201 name='Fingerwear', 

202 fields=[ 

203 ( 

204 'id', 

205 models.BigAutoField( 

206 auto_created=True, 

207 primary_key=True, 

208 serialize=False, 

209 verbose_name='ID', 

210 ), 

211 ), 

212 ('first_image', models.URLField(unique=True)), 

213 ('second_image', models.URLField(unique=True)), 

214 ('created_at', models.DateTimeField(auto_now_add=True)), 

215 ( 

216 'collection', 

217 models.ForeignKey( 

218 on_delete=django.db.models.deletion.CASCADE, 

219 to='products.collection', 

220 ), 

221 ), 

222 ( 

223 'color', 

224 models.ForeignKey( 

225 on_delete=django.db.models.deletion.CASCADE, 

226 to='products.color', 

227 ), 

228 ), 

229 ( 

230 'metal', 

231 models.ForeignKey( 

232 on_delete=django.db.models.deletion.CASCADE, 

233 to='products.metal', 

234 ), 

235 ), 

236 ( 

237 'stone', 

238 models.ForeignKey( 

239 on_delete=django.db.models.deletion.CASCADE, 

240 to='products.stone', 

241 ), 

242 ), 

243 ], 

244 options={ 

245 'abstract': False, 

246 }, 

247 ), 

248 migrations.CreateModel( 

249 name='Earwear', 

250 fields=[ 

251 ( 

252 'id', 

253 models.BigAutoField( 

254 auto_created=True, 

255 primary_key=True, 

256 serialize=False, 

257 verbose_name='ID', 

258 ), 

259 ), 

260 ('first_image', models.URLField(unique=True)), 

261 ('second_image', models.URLField(unique=True)), 

262 ('created_at', models.DateTimeField(auto_now_add=True)), 

263 ( 

264 'collection', 

265 models.ForeignKey( 

266 on_delete=django.db.models.deletion.CASCADE, 

267 to='products.collection', 

268 ), 

269 ), 

270 ( 

271 'color', 

272 models.ForeignKey( 

273 on_delete=django.db.models.deletion.CASCADE, 

274 to='products.color', 

275 ), 

276 ), 

277 ( 

278 'metal', 

279 models.ForeignKey( 

280 on_delete=django.db.models.deletion.CASCADE, 

281 to='products.metal', 

282 ), 

283 ), 

284 ( 

285 'stone', 

286 models.ForeignKey( 

287 on_delete=django.db.models.deletion.CASCADE, 

288 to='products.stone', 

289 ), 

290 ), 

291 ], 

292 options={ 

293 'abstract': False, 

294 }, 

295 ), 

296 migrations.CreateModel( 

297 name='Wristwear', 

298 fields=[ 

299 ( 

300 'id', 

301 models.BigAutoField( 

302 auto_created=True, 

303 primary_key=True, 

304 serialize=False, 

305 verbose_name='ID', 

306 ), 

307 ), 

308 ('first_image', models.URLField(unique=True)), 

309 ('second_image', models.URLField(unique=True)), 

310 ('created_at', models.DateTimeField(auto_now_add=True)), 

311 ( 

312 'collection', 

313 models.ForeignKey( 

314 on_delete=django.db.models.deletion.CASCADE, 

315 to='products.collection', 

316 ), 

317 ), 

318 ( 

319 'color', 

320 models.ForeignKey( 

321 on_delete=django.db.models.deletion.CASCADE, 

322 to='products.color', 

323 ), 

324 ), 

325 ( 

326 'metal', 

327 models.ForeignKey( 

328 on_delete=django.db.models.deletion.CASCADE, 

329 to='products.metal', 

330 ), 

331 ), 

332 ( 

333 'stone', 

334 models.ForeignKey( 

335 on_delete=django.db.models.deletion.CASCADE, 

336 to='products.stone', 

337 ), 

338 ), 

339 ], 

340 options={ 

341 'abstract': False, 

342 }, 

343 ), 

344 migrations.CreateModel( 

345 name='Review', 

346 fields=[ 

347 ( 

348 'id', 

349 models.BigAutoField( 

350 auto_created=True, 

351 primary_key=True, 

352 serialize=False, 

353 verbose_name='ID', 

354 ), 

355 ), 

356 ( 

357 'rating', 

358 models.IntegerField( 

359 choices=[ 

360 (1, '1'), 

361 (2, '2'), 

362 (3, '3'), 

363 (4, '4'), 

364 (5, '5'), 

365 ] 

366 ), 

367 ), 

368 ( 

369 'comment', 

370 models.TextField( 

371 validators=[ 

372 django.core.validators.MaxLengthValidator(300) 

373 ] 

374 ), 

375 ), 

376 ('approved', models.BooleanField(default=False)), 

377 ('created_at', models.DateTimeField(auto_now_add=True)), 

378 ('object_id', models.PositiveIntegerField()), 

379 ( 

380 'content_type', 

381 models.ForeignKey( 

382 on_delete=django.db.models.deletion.CASCADE, 

383 to='contenttypes.contenttype', 

384 ), 

385 ), 

386 ( 

387 'user', 

388 models.ForeignKey( 

389 on_delete=django.db.models.deletion.CASCADE, 

390 to=settings.AUTH_USER_MODEL, 

391 ), 

392 ), 

393 ], 

394 options={ 

395 'ordering': ['-created_at'], 

396 'permissions': [('approve_review', 'Can approve reviews')], 

397 'unique_together': {('user', 'content_type', 'object_id')}, 

398 }, 

399 ), 

400 ]