From 3e78dde2e2c90dc4d759aa44ed74e3551f8a1de5 Mon Sep 17 00:00:00 2001 From: Xuan Loi Date: Thu, 2 Apr 2026 11:11:06 +0700 Subject: [PATCH] changes --- api/__pycache__/__init__.cpython-312.pyc | Bin 139 -> 145 bytes api/__pycache__/settings.cpython-312.pyc | Bin 3432 -> 3398 bytes api/__pycache__/urls.cpython-312.pyc | Bin 4453 -> 3957 bytes api/settings.py | 4 +- app/__pycache__/__init__.cpython-312.pyc | Bin 139 -> 145 bytes app/__pycache__/admin.cpython-312.pyc | Bin 183 -> 189 bytes app/__pycache__/apps.cpython-312.pyc | Bin 687 -> 649 bytes app/__pycache__/backup.cpython-312.pyc | Bin 8991 -> 8997 bytes app/__pycache__/basic.cpython-312.pyc | Bin 7650 -> 7656 bytes app/__pycache__/cob.cpython-312.pyc | Bin 6244 -> 6250 bytes .../document_generator.cpython-312.pyc | Bin 27470 -> 27476 bytes app/__pycache__/email.cpython-312.pyc | Bin 6793 -> 6857 bytes app/__pycache__/importdata.cpython-312.pyc | Bin 22523 -> 22529 bytes app/__pycache__/models.cpython-312.pyc | Bin 139163 -> 133743 bytes app/__pycache__/querydict.cpython-312.pyc | Bin 2339 -> 2345 bytes app/__pycache__/server.cpython-312.pyc | Bin 3709 -> 3715 bytes app/__pycache__/signals.cpython-312.pyc | Bin 3500 -> 3975 bytes app/__pycache__/views.cpython-312.pyc | Bin 73756 -> 71940 bytes app/migrations/0008_data_story.py | 37 ++++++++++ ...egory_remove_display_status_en_and_more.py | 24 +++++++ .../0010_category_data_story_category.py | 39 +++++++++++ .../__pycache__/0001_initial.cpython-312.pyc | Bin 86813 -> 129562 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 150 -> 156 bytes app/models.py | 66 +++++++++++++----- 24 files changed, 149 insertions(+), 21 deletions(-) create mode 100644 app/migrations/0008_data_story.py create mode 100644 app/migrations/0009_remove_data_story_category_remove_display_status_en_and_more.py create mode 100644 app/migrations/0010_category_data_story_category.py diff --git a/api/__pycache__/__init__.cpython-312.pyc b/api/__pycache__/__init__.cpython-312.pyc index d0777ec8170acc82f1f01f277180c243f2b41cab..0ee44bb919e151788fed773574ac3fee5ca94ef1 100644 GIT binary patch delta 52 zcmeBXoXE(1nwOW00SG>wJv))xSk^#4BR@A)KPNx4q(VO>wM;)LGd(4-Br!QBzcgiH Gs2KpK!x5AK delta 46 zcmbQp*v-g&nwOW00SF@Qhfm}-7T40x$j?pH&&kg$snAbJEz>V8$uG!EoEU8e03p86}mX93`Ei z5+wsPSv5s1Rd_Z-iuzpU6pa*3piZqh%s?|`fpXd@Iv^``)0om3ff9Oin1B*;mHL_n zo0}M;m>4-Gr?P5HzQ_D!@(-50&AqHCjQo6t#uj>pmX>-(2F7~ECX>0?Z9RCCGSgEM zOA_OgbMi}5ZgCXk7nh_Lr54|kGbl8R$n?$dEA{XX^fgR&@(&Cxwe$wM-vsIN0pT3%E5HXHGuJ9mvkf z$JD^}L2R-jkB_0O;)1YQaThryFBm#Duzg@-VCB2P=XgUv{)T|m4H1(Y0%9N}A^AX3 Q`i8XZ4H1dSb9l}G0G5+>pa1{> delta 423 zcmX>m^+JmGG%qg~0}wPmFUovAk@rEpP?T_raEeHZXo^^hc&c!UL<(byWQtUZbc)Oz z<`mgE9GQ$!A}Mky@|lc4QUOdVf=Q)J#&nh_(G=wDCrcn zC>fy1>M0tj!m}AtH0Ls>Xr*Wab?VGv2AU}gl+#Vo69ZbQpT?BV2$V3G!vvI&t2ER! z+T6q##l*-tnT6%6v`S(@fnIKAN=i;@d16tjo^xqYQEFaEXmM)Ml7BEZmk2?{f}#qsPc;#&F{ z`MIh3Ir*6-75XWuW%>|fC)aRmFixMmlsk}}n~$l1>x0zfzuZ3hlClfLX32HRtcYu1 r`@qJ)%6Eg$@rHoJ4FRbeA|^Kk#6U7!R6bJBKm?h@R#Ezj3V9bZt1`G?eivio<*sW7LB~}h?Dpg7?Y)?`s4u}u8 zO)8<@BK2alhv1WmdMG)iQZ7D3mG4y~Z|ATohxSnQQmN9UQ7%1o-pEy3WhJEl`@NZ` z85Z$d@Rcw8gWYZs*z@P}=OxW72){z{&m*0Omp`ITcy3q}?g$0}8}<-J<+09bK$2K+ zK`^l}-Z_;;H&jEc^0FYBJI`dv!YV(om4zU%O;to$va@m;e3*r>N<~@yMhr?9Srr2w zVL^c~%0d#tB^Ksb5XaPy4YK59q_vI6;=WlBHn*@DGt>8B9fnMs{l}BvK zJhiuhhdHOdYw76?Exkd|CUt;cWd7j2uJhP;cBGd!u1>EYc>)x2= zjS&>56Tm(`Inqz*vpH=xM^K(lg8R8o_oXL}#}0xrGyocWeRT+YstwcMJ^bL|tjX9Y9zgx}&zs1-4dM4e!p!pXFO4Ahh0{6+DQxBxIKpO6u2G4Mh^|7w3 zYsxx7S7{b}@qE4O-}Ou2%W(fQTc9WF!K@bK7sx>)&pq6a>d{p#x=PR*T>-x$vIhGa z7IjZj^CSs+ldg);SmTXCH>$hinmbOALf__%cc5`*o9MRm$t7))|2Ed4^Od!(u)j6o EZ~Q`(#{d8T delta 1707 zcmZXT%TF6u6o)PS^9RozsIbfYMns;YX=1qZ5*igi%JME54qB19XGD!AZQCE_=aSDD;81%D+)B(4`l=je-xLkwO5V ziNX+6Hp^esNqh@kj(~5a5C-2SHyb7X3|)?bZ>KN@&_N*%aF)U(RGyQ6q?PBfDRTvU zCxsb+F3e|U0qnRwa}A&yH)Ik3A~t8{0eWbYn*a_9@5_&o+i1z$qQd8*VxhKGC*PS5 zPq;>3%fnm;@1_?lLaSaZWIh6rC@cZ=QTX@?XE!Yl-|HXnJpTths#`Pb{8k!o7jiz_#5*`uF5zJB^Y7}v=MqiHR4QNIDEa9f3ipD&_uFeCSI(Bw?{r%# zn=fL2e$Bs9E~Yndu}Ethp|^h(XK^W=-w4W|neW;f@lFb7{YUqfUzroe`GE`a4NKfv zfFE4J3MYY{^ycGH-c2k&vb>tM9p8VM4Wzf#mTa73*}{fd&aW-khS6;>%5rTK`E%gL=6-BP_iSzLy_m4C5D2d(8ob~9Nj;lf7onc)q*w7>d-pX75mn9Zk4 zJHb`F6)czXo9U#yBy{aYX#qz+#YLmRK#Uy6y{>EI&|A^KIes-PX@;er3`+#{HP!u$ ztS<#e)u*{86xW1`CW(>S*9`_^>FwNe^fT>pXB6(gw$s!EqJEi4(kw z`MyK`o2F+?DvA;}*xla$mrD@zLHDbVKX`g)?+!doKS&SAQ^O5_^nyI~0tP|)SX-%D z*7{>ge@sQA#1B5eJe@-GL={g|-9<4HgkXpT-IZ;vXGG~4QBjBtgTKJMyLwxbCKYK? zMN{M=_z~uv)r*=ts<@*n?GpkYX5L;&Yhp+dLn;cB2>2-V|J|(^=-p9PFIG*OBdj>W zDvFRx5R5V3Q*GCr5ycsS4I2j^XWn;+wZOCzm{!pYnE*e@9beFKa={b_$>pQOUcs6e zR>ZI-#uYKHitJem@3ERIM>Wo>q`6{>i|yAmOJ;RTLoCA^6l<2-APszv0sZM*si- diff --git a/api/settings.py b/api/settings.py index e08ffe31..9f881aba 100644 --- a/api/settings.py +++ b/api/settings.py @@ -21,7 +21,7 @@ BASE_DIR = Path(__file__).resolve().parent.parent SECRET_KEY = 'django-insecure-_u202k$8qq2p*cr_eo(7k!0ngr5^n)27@85+5oy8&41(u6&j54' # SECURITY WARNING: don't run with debug turned on in production! -DEBUG = True +DEBUG = False ALLOWED_HOSTS = ['*'] @@ -79,7 +79,7 @@ ASGI_APPLICATION = 'api.asgi.application' # https://docs.djangoproject.com/en/4.1/ref/settings/#databases #prod:5.223.52.193 dev:5.223.42.146 -MODE = 'dev' +MODE = 'prod' DBHOST = '138.199.203.34' if MODE == 'prod' else '138.199.203.34' DATABASES = { diff --git a/app/__pycache__/__init__.cpython-312.pyc b/app/__pycache__/__init__.cpython-312.pyc index e6e15c05bdb5fc2957c3efef6bc8fb8b430277aa..7c61241eb203a922d03de17fdab019517b1aed22 100644 GIT binary patch delta 52 zcmeBXoXE(1nwOW00SG>wJv))xSk^#4BR@A)KPNx4q(VO>wM;)LGd(4-Br!QBzcgiH Gs2KpK!x5AK delta 46 zcmbQp*v-g&nwOW00SF@Qhfm}-7T40x$j?pH&&kg$snAbJEz>V8$uG!EoEU8e03q51+^#FRreik)NBYpOc?iQlX!cTBcuGl3$RSII-Of062mU A>;M1& diff --git a/app/__pycache__/apps.cpython-312.pyc b/app/__pycache__/apps.cpython-312.pyc index e2a67292ffeb6994d3e2c111121edb879578bfb7..bffb6c19092709e9a31a0fbd31a7c623319982b6 100644 GIT binary patch delta 276 zcmZ3_+R4gynwOW00SG>wJ)3!-VItpYF#{lPIztL$3R4b4E@LetBSQ^i7VE_C@^Q?5 zFByT7nvA#Di!;;n5_5_*nQt)^aR9|`@h9i!<)tQ<#KUBmZm|@n=A?mTijxr=*tYCuOFmB$gy5=j4~BOzvmYWfuf0Y+$%M`50p;FE5b2lA(wX zNEPu+)?iXiVq#T-aG8N(ews|TxKpwc^V0M65(^57i$H=!A|L{y1<3lvVUwGmQks)$ jS0o1Hf?Qt=Qt^SAk&*E(gW?x9Hb$ihoL?D$6j&Dk`^ZJC delta 295 zcmeBVUC+vQnwOW00SF@QhiCFIPUJf+X946*XGmd8VaQ>qWlUj8Va{R9WvXRjWT;`v zVxRb4zMjRehzY3ZB_oi~WW2>*oSB}Nm{Y9Da!Vw!pg^xYzbHE`C%-&CF}Wl&Kd<-} zLlFm1W=Vy9N@|&YQf7KeVo73hPJU_1 J=0e_eq5uK>6J-DZ delta 49 zcmZ4LHs6i=G%qg~0}w>q58ue`&nvE>pOK%Ns-KgeSyG{&l3J!;T9RLonYg)}cbzBz DaNH0O diff --git a/app/__pycache__/basic.cpython-312.pyc b/app/__pycache__/basic.cpython-312.pyc index 1fcdf458535df10f6d3df2dbebe2fe3551529dd8..a943d252f52e19d37ae0fe1ac2c77f4717cb8310 100644 GIT binary patch delta 61 zcmaE4{lc32G%qg~0}y;Vdv+rCJ6T=*jQreG{ha*Fk_!El)H3~~%=DDRlEmbk{L+-o Q0*oI;7;kN65_`Z70Jzf@r~m)} delta 55 zcmaE1{m7d8G%qg~0}w>q51+{WPF!6-BR@A)KPNx4q(VO>wM@UXB)=dtakCiXM-j$f Kn>oZDumb=L{}Xut diff --git a/app/__pycache__/cob.cpython-312.pyc b/app/__pycache__/cob.cpython-312.pyc index 88979e215de20154753e8f362faedc4dade8c24e..a5d882158b372d18e0ef7f299fbf34037257aafa 100644 GIT binary patch delta 55 zcmaE2@XCPuG%qg~0}y;Vdv+uDKMq-K{fzwFRQ;U%%#sTIl+-f)q|Ee`#FE71ocz+1 J%?g|@`~WNi6QuwE delta 49 zcmaE5@Wg=oG%qg~0}w>q58ufBk3(ElKO;XkRX-;`v!p^lCACbyv?RYEGjX#Trwcy- Dl*JHG diff --git a/app/__pycache__/document_generator.cpython-312.pyc b/app/__pycache__/document_generator.cpython-312.pyc index c80c07b3d5e4894d4e849f73ce6cc991ad3d9ba7..882093bdd074e984c9b73d369976cff114659c8b 100644 GIT binary patch delta 64 zcmX?ijq%DgM()$Ryj%=G@agQ?job%0Wv%ox@^e%5bMiAwD)duQ%k+~n(^C>l5|eZC TOH(#K=1etYytUcWn$-XR3%3{N delta 58 zcmca|jq%(yM()$Ryj%=Ga7rqBBlkg0aTEQF{M=Oioczp^3jLJSGX2t${DREH%`Z7q N4HwJ)5Z^x{*(pT~=2=BR@A)KPNx4q(VO>wM;)LGd(4-Br!QB zzcgiY5PK^>TNon)!*qtp^To9%bBI5$uVt-aE#fa>2N?tcDQqe1nT#nMYdBXkK}3QX zP-MA)vfRkBnmm3*LO`Xrm`d`CM1YJUJ`kY~BFuqA6;E(#UW!6-X>xLEaq-I&AaM?m zI5$vSHANvUF*7GMCG!i=U79RKE+AXJ!T_k&jG3R#6bpWB?4kRfhlo delta 282 zcmX?U+G)ynnwOW00SF@Qhi4uY*~q8MF0QVhk)NBYpOc?iQlX!cTBcuGl3$RSxH*Eo zm7mdT^F1+f#(GAE5_XU_5Gdh*&2)%}FH6w%-%%I8cS0n`F++r%pFA@PV ziugc;K8OGrqRCd|0%9wG2wM;VGO&mfNZbd%=MJGheC||+8LF@{X#T`z;Ibzo(jW0?X hU*R;lz+|$yQPPZ2h>OwmGcyB|$VVn1t0)L)0sxERJl+5R diff --git a/app/__pycache__/importdata.cpython-312.pyc b/app/__pycache__/importdata.cpython-312.pyc index f6f533a1ffdbe92f77239211fb6f9953b98ede32..6ab9800f6529c7148da56ef5ca81a64adfe94248 100644 GIT binary patch delta 57 zcmeypp0RNQBll@uUM>b8_;mK{M(#jnStI?7{M=Oioczp^3jLJSGX12?^pwPs#N?d( L(v;1`%pD;BJ~I@5 delta 51 zcmZqN!1#MTBll@uUM>b8h`1lVkvouCTt`16KQ~oBCqJ{KLO&(7Ouw`wzaTSlb0u>} F2mqyK5h?%x diff --git a/app/__pycache__/models.cpython-312.pyc b/app/__pycache__/models.cpython-312.pyc index 1c14897246cfb02d080e2913c78de2f2c64a9f3a..e22af44497b57f00a47d72fdb0028d5888cfd2a9 100644 GIT binary patch delta 30881 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 =Kvv7f5Q88`hEWcvP! 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 delta 32708 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 diff --git a/app/__pycache__/querydict.cpython-312.pyc b/app/__pycache__/querydict.cpython-312.pyc index 7af32a443822c015332a1d9d564c902814c7ceb6..b4e297476f474cec97d4c7aee49baeb82719c4ab 100644 GIT binary patch delta 55 zcmZ21v{H!sG%qg~0}y;Vdv+st9+Rx0enx(7s(wy>W=Vy9N@|&YQf7KeVo73hPJU_1 J<_S!b*#Pl?69xbP delta 49 zcmZ1}v{;DyG%qg~0}w>q58ue0$0V+;pOK%Ns-KgeSyG{&l3J!;T9RLonYeix(_}UP DVkHl; diff --git a/app/__pycache__/server.cpython-312.pyc b/app/__pycache__/server.cpython-312.pyc index 6ed5c819bdb0a881de9c01ca89a0278f77ae24ac..06382610a09b25a432265c1f47605cf57fdac717 100644 GIT binary patch delta 55 zcmew>(=5wwJ-d;68?&sQenx(7s(wy>W=Vy9N@|&YQf7KeVo73hPJU_1 J<{QjQxd05%6Z8N8 delta 49 zcmZpc{VT(LnwOW00SF@Qhi~NG#w@O(pOK%Ns-KgeSyG{&l3J!;T9RLonYj5L^HMGV Dc@7Yt diff --git a/app/__pycache__/signals.cpython-312.pyc b/app/__pycache__/signals.cpython-312.pyc index 783df8fea1bb1e66b935f4115329673964cdf70f..dd030df96af140bf6b47f29d20ecbbc3a7d2a3e4 100644 GIT binary patch delta 1064 zcmZ8f-A^1<6u)cM(D%9GAaZJrQsQ@QS(SZ1;(-21g4#j*`9?~ z2q%2P|KvC#r!lhqy{e+oP$%w32j^9!F$H>pKFI8QfUqmfby&d{=*8`M2o-3JyG~W3 z1pr3SC1i*8K^WXHPyJ^w{}y!>txyMzMv#W)skf<1|DJPr4&?(QXbvZY3m%stx@zm1 z$K__>jdd-7J!*FHO>TH>LeJRJE|zj9V3_p%(w)zxg|YI+ds6<+y4oRu`@ZygPL;Cd zjjs%8kABMIG<`~kKDjnvy;$B@HYA&vGg-;fXSC71s!{bdTPLF#b9&mad!z*Kab|U# z2~h+SIKJrhO)FST>RCeIVuo!kK(VpS2BhCc!#k?pU)I(DND6=@%UL z3s`@iPAnDz$?50Rg=fICmccw;M8CE^y=1Hj@78QnoRGpL`NS73pS5ht$)cQG%YS?M z#${Jd-jj!1v1Lnac3V2v+J6@N9+$%Po8fpd9IqfsNN$OBADp{#_LJd{hTUk#>fq}5 z*OS*KS6_8|R5vnqU(5jY%J{1Ai`calZb(%ShEYIr5BJ}@WTY7E?NWWaaI+>wT7p{RPr>SaB4a!w^#i}X5S{#3&N zfG0t%MlidJ=uci?Qh4WxbCLg>A>EL4UJ(c$a()t;jy?xrf+hzI`yoMw94e?p(%|-i zTF1b^gY5*@hk_4r%>abN|Gp&cbc$`v3*bKQyevNGsvLBtJYvT=YbRmM~jM<1p^7#ChEP=rE7_svZ6TxTF+O delta 599 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 Gz5fe&3YXsi delta 21367 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 BhXeos diff --git a/app/migrations/0008_data_story.py b/app/migrations/0008_data_story.py new file mode 100644 index 00000000..c6d1ec79 --- /dev/null +++ b/app/migrations/0008_data_story.py @@ -0,0 +1,37 @@ +# Generated by Django 5.1.7 on 2026-04-02 02:33 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('app', '0007_alter_customer_type'), + ] + + operations = [ + migrations.CreateModel( + name='Data_Story', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('title', models.CharField(max_length=200)), + ('subtitle', models.CharField(max_length=400, null=True)), + ('image', models.TextField(null=True)), + ('header', models.JSONField(null=True)), + ('content', models.JSONField(null=True)), + ('canonical', models.CharField(max_length=200, null=True)), + ('tags', models.JSONField(null=True)), + ('meta_desc', models.TextField(null=True)), + ('create_time', models.DateTimeField(auto_now_add=True, null=True)), + ('update_time', models.DateTimeField(auto_now=True, null=True)), + ('category', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='app.category')), + ('language', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='app.lang_choice')), + ('status', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='app.display_status')), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='app.user')), + ], + options={ + 'db_table': 'data_story', + }, + ), + ] diff --git a/app/migrations/0009_remove_data_story_category_remove_display_status_en_and_more.py b/app/migrations/0009_remove_data_story_category_remove_display_status_en_and_more.py new file mode 100644 index 00000000..c2d7ed9b --- /dev/null +++ b/app/migrations/0009_remove_data_story_category_remove_display_status_en_and_more.py @@ -0,0 +1,24 @@ +# Generated by Django 5.1.7 on 2026-04-02 02:36 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('app', '0008_data_story'), + ] + + operations = [ + migrations.RemoveField( + model_name='data_story', + name='category', + ), + migrations.RemoveField( + model_name='display_status', + name='en', + ), + migrations.DeleteModel( + name='Category', + ), + ] diff --git a/app/migrations/0010_category_data_story_category.py b/app/migrations/0010_category_data_story_category.py new file mode 100644 index 00000000..ea9d20ca --- /dev/null +++ b/app/migrations/0010_category_data_story_category.py @@ -0,0 +1,39 @@ +# Generated by Django 5.1.7 on 2026-04-02 02:37 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('app', '0009_remove_data_story_category_remove_display_status_en_and_more'), + ] + + operations = [ + migrations.CreateModel( + name='Category', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('item', models.CharField(max_length=30, unique=True)), + ('value', models.CharField(max_length=100)), + ('level', models.PositiveIntegerField()), + ('parent', models.CharField(max_length=30, null=True)), + ('index', models.PositiveIntegerField(default=0)), + ('icon', models.CharField(max_length=50, null=True)), + ('image', models.CharField(max_length=500, null=True)), + ('link', models.CharField(max_length=500, null=True)), + ('create_time', models.DateTimeField(auto_now_add=True, null=True)), + ('update_time', models.DateTimeField(null=True)), + ], + options={ + 'db_table': 'category', + }, + ), + migrations.AddField( + model_name='data_story', + name='category', + field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='app.category'), + preserve_default=False, + ), + ] diff --git a/app/migrations/__pycache__/0001_initial.cpython-312.pyc b/app/migrations/__pycache__/0001_initial.cpython-312.pyc index bcdc2c20ac782e699e6bf2aee6a35fbe67c00938..5449db8cc51e67567c7e9f88e18005534d42440b 100644 GIT binary patch literal 129562 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 J0XoA|{2kR!l*a%7 diff --git a/app/migrations/__pycache__/__init__.cpython-312.pyc b/app/migrations/__pycache__/__init__.cpython-312.pyc index dd70d8c26f96ed234ed7d193af5c5f143046a647..4d545ef76e9cac4d5ffd43610d95944f88d82f73 100644 GIT binary patch delta 52 zcmbQnIERt@G%qg~0}y;Vdv+qXv8=UzMt*LpeolU7Nriq&YMFjgW_n6uNn&zNerd|Y GP)7i*kP*ND delta 46 zcmbQkIE|6}G%qg~0}w>q51+_wEN-fwk)NBYpOc?iQlX!cTBcuGl3$RSI5FB004X;P AYXATM diff --git a/app/models.py b/app/models.py index 853896c3..9fa0a315 100644 --- a/app/models.py +++ b/app/models.py @@ -255,6 +255,16 @@ class Bank(models.Model): db_table = 'bank' +class Display_Status(models.Model): + code = models.CharField(max_length=30, null=False, unique=True) + name = models.CharField(max_length=100, null=False) + index = models.IntegerField(null=True, default=1) + create_time = models.DateTimeField(null=True, auto_now_add=True) + + class Meta: + db_table = 'display_status' + + class User_Setting(models.Model): name = models.CharField(max_length=200, null=False, unique=True) detail = models.JSONField(null=False) @@ -543,25 +553,6 @@ class Approve_Status(models.Model): db_table = 'approve_status' -class Category(models.Model): - code = models.CharField(max_length=30, null=False, unique=True) - name = models.CharField(max_length=100, null=False) - create_time = models.DateTimeField(null=True, auto_now_add=True) - - class Meta: - db_table = 'category' - - -class Display_Status(models.Model): - code = models.CharField(max_length=30, null=False, unique=True) - name = models.CharField(max_length=100, null=False) - en = models.CharField(max_length=100, null=True) - index = models.IntegerField(null=True, default=1) - create_time = models.DateTimeField(null=True, auto_now_add=True) - - class Meta: - db_table = 'display_status' - class Payment_Status(models.Model): code = models.CharField(max_length=30, null=False, unique=True) @@ -861,6 +852,43 @@ class Issued_Place(models.Model): db_table = 'issued_place' + +class Category(models.Model): + item = models.CharField(max_length=30, null=False, unique = True) + value = models.CharField(max_length=100, null=False) + level = models.PositiveIntegerField(null=False) + parent = models.CharField(max_length=30, null=True) + index = models.PositiveIntegerField(null=False, default=0) + icon = models.CharField(max_length=50, null=True) + image = models.CharField(max_length=500, null=True) + link = models.CharField(max_length=500, null=True) + create_time = models.DateTimeField(null = True, auto_now_add=True) + update_time = models.DateTimeField(null = True) + + class Meta: + db_table = 'category' + + +class Data_Story(models.Model): + title = models.CharField(max_length=200, null=False) + subtitle = models.CharField(max_length=400, null=True) + image = models.TextField(null=True) + header = models.JSONField(null=True) + content = models.JSONField(null=True) + canonical = models.CharField(max_length=200, null=True) + category = models.ForeignKey(Category, null=False, related_name='+', on_delete=models.PROTECT) + status = models.ForeignKey(Display_Status, null=False, related_name='+', on_delete=models.PROTECT) + language = models.ForeignKey(Lang_Choice, null=False, related_name='+', on_delete=models.PROTECT) + tags = models.JSONField(null=True) + meta_desc = models.TextField(null=True) + user = models.ForeignKey(User, null=False, related_name='+', on_delete=models.PROTECT) + create_time = models.DateTimeField(null=True, auto_now_add=True) + update_time = models.DateTimeField(null=True, auto_now=True) + + class Meta: + db_table = 'data_story' + + class Company(AutoCodeModel): code_prefix = "CP" code_padding = 5