Files
diary-family/core/__pycache__/views.cpython-313.pyc

87 lines
22 KiB
Plaintext
Raw Normal View History

2026-01-04 19:17:33 +08:00
<EFBFBD>
2026-01-05 23:11:41 +08:00
j<>[i<>@<00><00>L<00>SSKJrJrJr SSKJrJr SSKJr SSK J
2026-01-04 19:17:33 +08:00
r
SSK J r J r SSKJr SSKJrJr SSKrSS KJr SqS
rS S KJrJrJrJrJr S S KJrJrJ r J!r!J"r" Sr#Sr$Sr%Sr&Sr'Sr(Sr)Sr*Sr+Sr,Sr-Sr.Sr/Sr0Sr1Sr2Sr3Sr4S r5S!r6S"r7S#r8S$r9g)%<25>)<03>render<65>redirect<63>get_object_or_404)<02> HttpResponse<73> JsonResponse)<01>timezone)<01>Count)<02> send_mail<69> EmailMessage)<01>settings)<02> timedelta<74>datetimeN)<01>loggerc<00><><00>[cSSKJn Sq[$[$![a [R
"S5 Sq[$f=f)u检查WeasyPrint是否可用r<00><01>HTMLTu1WeasyPrint库无法导入PDF功能将不可用F)<06>WEASYPRINT_AVAILABLE<4C>
weasyprintr<00> ImportErrorr<00>warningrs <20>JC:\Users\xiaji\Documents\个人文件夹\夏骥\diary-family\core\views.py<70>is_weasyprint_availablersP<00><00><1C>#<23> )<29> '<27>#'<27> <20> <20><1F> <1F><1F><><1B> )<29> <12>N<EFBFBD>N<EFBFBD>N<> O<>#(<28> <20> <1F><1F> )<29>s<00><00>"A<03>A<03>)<05> ReadingRecord<72> InsightRecord<72>
FamilyTask<EFBFBD> TodayPlan<61> SystemConfig)<05>ReadingRecordForm<72>InsightRecordForm<72>FamilyTaskForm<72> TodayPlanForm<72>SystemConfigFormc<00><><00>[R"S5 [R"5R 5nU[ SS9-
2026-01-05 23:11:41 +08:00
n[ RRUS9n[RRUS9n[RRUS9n[RRSS9nUUUUUUS.n[USU5$) u首页u用户访问首页r<00><01>days<79><01>date<74>pending)<01> status__name)<06> yesterday<61>today<61>yesterday_reading<6E>yesterday_insight<68>
today_plan<EFBFBD>pending_family_taskszcore/index.html) r<00>infor<00>nowr(r r<00>objects<74>filterrrrr)<08>requestr,r+r-r.r/r0<00>contexts r<00>indexr7+s<><00><00>
<EFBFBD>K<EFBFBD>K<EFBFBD>$<24>%<25> <14>L<EFBFBD>L<EFBFBD>N<EFBFBD> <1F> <1F> !<21>E<EFBFBD><15> <09>q<EFBFBD>)<29>)<29>I<EFBFBD>&<26>-<2D>-<2D>4<>4<>)<29>4<>D<><15>%<25>-<2D>-<2D>4<>4<>)<29>4<>D<><15><1B>"<22>"<22>)<29>)<29>u<EFBFBD>)<29>5<>J<EFBFBD>&<26>-<2D>-<2D>4<>4<>)<29>4<>L<><18><1F><16>.<2E>.<2E> <20> 4<> <06>G<EFBFBD> <12>'<27>,<2C>g<EFBFBD> 6<>6<>c<00>&<00>[R"S5 [R"5R 5nU[ SS9-
n[ RRUS9n[RRUS9nUUUS.n[USU5$)u 昨日记录u用户访问昨日记录页面rr%r')r+<00>reading_records<64>insight_recordszcore/yesterday_records.html) rr1rr2r(r rr3r4rr)r5r,r+r:r;r6s r<00>yesterday_recordsr<Hs<><00><00>
<EFBFBD>K<EFBFBD>K<EFBFBD>0<>1<> <14>L<EFBFBD>L<EFBFBD>N<EFBFBD> <1F> <1F> !<21>E<EFBFBD><15> <09>q<EFBFBD>)<29>)<29>I<EFBFBD>$<24>+<2B>+<2B>2<>2<> <09>2<>B<>O<EFBFBD>$<24>+<2B>+<2B>2<>2<> <09>2<>B<>O<EFBFBD><1F>*<2A>*<2A><06>G<EFBFBD> <12>'<27>8<>'<27> B<>Br8c<00>F<00>URS:Xaw[URUR5nUR 5(aAUR 5 [ R"SURS35 [S5$O
[5nSU0n[USU5$)u添加阅读记录<E8AEB0>POSTu添加阅读记录: <20>titler<<00>formzcore/add_reading.html) <0B>methodrr><00>FILES<45>is_valid<69>saverr1<00> cleaned_datarr<00>r5r@r6s r<00> add_readingrG]s<><00><00><0E>~<7E>~<7E><16><1F> <20><17><1C><1C>w<EFBFBD>}<7D>}<7D>=<3D><04> <0F>=<3D>=<3D>?<3F>?<3F> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD> <12>K<EFBFBD>K<EFBFBD>.<2E>t<EFBFBD>/@<40>/@<40><17>/I<>.J<>K<> L<><1B>/<2F>0<> 0<> <1B>
!<21>"<22><04><15>t<EFBFBD>n<EFBFBD>G<EFBFBD> <11>'<27>2<>G<EFBFBD> <<3C><r8c<00>^<00>[[US9nURS:Xav[URUR
US9nUR 5(aAUR5 [R"SURS35 [S5$O [US9nX2S.n[USU5$) u编辑阅读记录<E8AEB0><01>pkr><00><01>instanceu编辑阅读记录: r?r<)r@<00>readingzcore/edit_reading.html) rrrArr>rBrCrDrr1rErr)r5rJrMr@r6s r<00> edit_readingrNls<><00><00><1F> <0A>"<22>5<>G<EFBFBD><0E>~<7E>~<7E><16><1F> <20><17><1C><1C>w<EFBFBD>}<7D>}<7D>w<EFBFBD>O<><04> <0F>=<3D>=<3D>?<3F>?<3F> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD> <12>K<EFBFBD>K<EFBFBD>.<2E>t<EFBFBD>/@<40>/@<40><17>/I<>.J<>K<> L<><1B>/<2F>0<> 0<> <1B>
!<21>'<27>2<><04><1B>0<>G<EFBFBD> <11>'<27>3<>W<EFBFBD> =<3D>=r8c<00><><00>[[US9nURS:Xa>UR5 [R
"SUR 35 [S5$SU0n[USU5$)u删除阅读记录rIr>u删除阅读记录: r<rMzcore/delete_reading.html) rrrA<00>deleterr1r?rr)r5rJrMr6s r<00>delete_readingrQ|sb<00><00><1F> <0A>"<22>5<>G<EFBFBD><0E>~<7E>~<7E><16><1F><0F><0E><0E><18><0E> <0B> <0B>*<2A>7<EFBFBD>=<3D>=<3D>/<2F>:<3A>;<3B><17>+<2B>,<2C>,<2C><18>'<27>"<22>G<EFBFBD> <11>'<27>5<>w<EFBFBD> ?<3F>?r8c<00>&<00>URS:Xag[URUR5nUR 5(a1UR 5 [ R"S5 [S5$O
[5nSU0n[USU5$)u添加感悟记录r>r<r@zcore/add_insight.html)
rAr r>rBrCrDrr1rrrFs r<00> add_insightrS<00>sw<00><00><0E>~<7E>~<7E><16><1F> <20><17><1C><1C>w<EFBFBD>}<7D>}<7D>=<3D><04> <0F>=<3D>=<3D>?<3F>?<3F> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD> <12>K<EFBFBD>K<EFBFBD>,<2C> -<2D><1B>/<2F>0<> 0<> <1B>
!<21>"<22><04><15>t<EFBFBD>n<EFBFBD>G<EFBFBD> <11>'<27>2<>G<EFBFBD> <<3C><r8c<00>><00>[[US9nURS:Xaf[URUR
US9nUR 5(a1UR5 [R"S5 [S5$O [US9nX2S.n[USU5$)u编辑感悟记录rIr>rKr<)r@<00>insightzcore/edit_insight.html) rrrAr r>rBrCrDrr1rr)r5rJrUr@r6s r<00> edit_insightrV<00>s<><00><00><1F> <0A>"<22>5<>G<EFBFBD><0E>~<7E>~<7E><16><1F> <20><17><1C><1C>w<EFBFBD>}<7D>}<7D>w<EFBFBD>O<><04> <0F>=<3D>=<3D>?<3F>?<3F> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD> <12>K<EFBFBD>K<EFBFBD>,<2C> -<2D><1B>/<2F>0<> 0<> <1B>
!<21>'<27>2<><04><1B>0<>G<EFBFBD> <11>'<27>3<>W<EFBFBD> =<3D>=r8c<00><><00>[[US9nURS:Xa1UR5 [R
"S5 [ S5$SU0n[USU5$)u删除感悟记录rIr>r<rUzcore/delete_insight.html)rrrArPrr1rr)r5rJrUr6s r<00>delete_insightrX<00>sW<00><00><1F> <0A>"<22>5<>G<EFBFBD><0E>~<7E>~<7E><16><1F><0F><0E><0E><18><0E> <0B> <0B>(<28>)<29><17>+<2B>,<2C>,<2C><18>'<27>"<22>G<EFBFBD> <11>'<27>5<>w<EFBFBD> ?<3F>?r8c<00><><00>[R"S5 [RR 5nSU0n[ USU5$)u 家庭事项u用户访问家庭事项页面<E9A1B5>taskszcore/family_tasks.html)rr1rr3<00>allr)r5rZr6s r<00> family_tasksr\<00>sC<00><00>
<EFBFBD>K<EFBFBD>K<EFBFBD>0<>1<> <16> <1E> <1E> "<22> "<22> $<24>E<EFBFBD> <10><15><06>G<EFBFBD> <12>'<27>3<>W<EFBFBD> =<3D>=r8c<00>8<00>URS:Xap[UR5nUR5(aEUR 5 [
2026-01-04 19:17:33 +08:00
R "SURSSSS35 [S5$O
[5nSU0n[US U5$)
2026-01-05 23:11:41 +08:00
u添加家庭事项r>u添加家庭事项: <20>contentN<74><00>...r\r@zcore/add_family_task.html)
rAr!r>rCrDrr1rErrrFs r<00>add_family_taskra<00>s<><00><00><0E>~<7E>~<7E><16><1F><1D>g<EFBFBD>l<EFBFBD>l<EFBFBD>+<2B><04> <0F>=<3D>=<3D>?<3F>?<3F> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD> <12>K<EFBFBD>K<EFBFBD>.<2E>t<EFBFBD>/@<40>/@<40><19>/K<>C<EFBFBD>R<EFBFBD>/P<>.Q<>QT<51>U<> V<><1B>N<EFBFBD>+<2B> +<2B> <1B>
<1E><1F><04><15>t<EFBFBD>n<EFBFBD>G<EFBFBD> <11>'<27>6<><07> @<40>@r8c<00>P<00>[[US9nURS:Xao[URUS9nUR 5(aEUR 5 [R"SURSSSS35 [S 5$O [US9nX2S
.n[US U5$) u编辑家庭事项rIr>rKu编辑家庭事项: r^Nr_r`r\)r@<00>taskzcore/edit_family_task.html) rrrAr!r>rCrDrr1rErr)r5rJrcr@r6s r<00>edit_family_taskrd<00>s<><00><00> <1C>Z<EFBFBD>B<EFBFBD> /<2F>D<EFBFBD><0E>~<7E>~<7E><16><1F><1D>g<EFBFBD>l<EFBFBD>l<EFBFBD>T<EFBFBD>:<3A><04> <0F>=<3D>=<3D>?<3F>?<3F> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD> <12>K<EFBFBD>K<EFBFBD>.<2E>t<EFBFBD>/@<40>/@<40><19>/K<>C<EFBFBD>R<EFBFBD>/P<>.Q<>QT<51>U<> V<><1B>N<EFBFBD>+<2B> +<2B> <1B>
<1E>t<EFBFBD>,<2C><04><1B>*<2A>G<EFBFBD> <11>'<27>7<><17> A<>Ar8c<00><><00>[[US9nURS:XaBUR5 [R
2026-01-04 19:17:33 +08:00
"SUR SSS35 [S5$SU0n[US U5$)
2026-01-05 23:11:41 +08:00
u删除家庭事项rIr>u删除家庭事项: Nr_r`r\rczcore/delete_family_task.html) rrrArPrr1r^rr)r5rJrcr6s r<00>delete_family_taskrf<00>si<00><00> <1C>Z<EFBFBD>B<EFBFBD> /<2F>D<EFBFBD><0E>~<7E>~<7E><16><1F> <0C> <0B> <0B> <0A><0E> <0B> <0B>*<2A>4<EFBFBD><<3C><<3C><03><12>+<<3C>*=<3D>S<EFBFBD>A<>B<><17><0E>'<27>'<27><15>t<EFBFBD>n<EFBFBD>G<EFBFBD> <11>'<27>9<>7<EFBFBD> C<>Cr8c<00><><00>[R"S5 [R"5R 5n[
R RUS9nUUS.n[USU5$)u 今日计划u用户访问今日计划页面r')r,<00>planszcore/today_plan.html) rr1rr2r(rr3r4r)r5r,rhr6s rr/r/<00>s_<00><00>
2026-01-04 19:17:33 +08:00
<EFBFBD>K<EFBFBD>K<EFBFBD>0<>1<> <14>L<EFBFBD>L<EFBFBD>N<EFBFBD> <1F> <1F> !<21>E<EFBFBD> <16> <1D> <1D> $<24> $<24>%<25> $<24> 0<>E<EFBFBD><17><16><06>G<EFBFBD>
2026-01-05 23:11:41 +08:00
<12>'<27>1<>7<EFBFBD> ;<3B>;r8c<00>8<00>URS:Xap[UR5nUR5(aEUR 5 [
2026-01-04 19:17:33 +08:00
R "SURSSSS35 [S5$O
[5nSU0n[US U5$)
2026-01-05 23:11:41 +08:00
u添加今日计划r>u添加今日计划: r^Nr_r`r/r@zcore/add_today_plan.html)
rAr"r>rCrDrr1rErrrFs r<00>add_today_planrj<00>s<><00><00><0E>~<7E>~<7E><16><1F><1C>W<EFBFBD>\<5C>\<5C>*<2A><04> <0F>=<3D>=<3D>?<3F>?<3F> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD> <12>K<EFBFBD>K<EFBFBD>.<2E>t<EFBFBD>/@<40>/@<40><19>/K<>C<EFBFBD>R<EFBFBD>/P<>.Q<>QT<51>U<> V<><1B>L<EFBFBD>)<29> )<29> <1B>
<1D><EFBFBD><04><15>t<EFBFBD>n<EFBFBD>G<EFBFBD> <11>'<27>5<>w<EFBFBD> ?<3F>?r8c<00>P<00>[[US9nURS:Xao[URUS9nUR 5(aEUR 5 [R"SURSSSS35 [S 5$O [US9nX2S
.n[US U5$) u编辑今日计划rIr>rKu编辑今日计划: r^Nr_r`r/)r@<00>planzcore/edit_today_plan.html) rrrAr"r>rCrDrr1rErr)r5rJrlr@r6s r<00>edit_today_planrm s<><00><00> <1C>Y<EFBFBD>2<EFBFBD> .<2E>D<EFBFBD><0E>~<7E>~<7E><16><1F><1C>W<EFBFBD>\<5C>\<5C>D<EFBFBD>9<><04> <0F>=<3D>=<3D>?<3F>?<3F> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD> <12>K<EFBFBD>K<EFBFBD>.<2E>t<EFBFBD>/@<40>/@<40><19>/K<>C<EFBFBD>R<EFBFBD>/P<>.Q<>QT<51>U<> V<><1B>L<EFBFBD>)<29> )<29> <1B>
<1D>d<EFBFBD>+<2B><04><1B>*<2A>G<EFBFBD> <11>'<27>6<><07> @<40>@r8c<00><><00>[[US9nURS:XaBUR5 [R
2026-01-04 19:17:33 +08:00
"SUR SSS35 [S5$SU0n[US U5$)
2026-01-05 23:11:41 +08:00
u删除今日计划rIr>u删除今日计划: Nr_r`r/rlzcore/delete_today_plan.html) rrrArPrr1r^rr)r5rJrlr6s r<00>delete_today_planrosi<00><00> <1C>Y<EFBFBD>2<EFBFBD> .<2E>D<EFBFBD><0E>~<7E>~<7E><16><1F> <0C> <0B> <0B> <0A><0E> <0B> <0B>*<2A>4<EFBFBD><<3C><<3C><03><12>+<<3C>*=<3D>S<EFBFBD>A<>B<><17> <0C>%<25>%<25><15>t<EFBFBD>n<EFBFBD>G<EFBFBD> <11>'<27>8<>'<27> B<>Br8c<00><><00>[[US9n[RR SS9n[RR SS9nUR
U:XaUOUUlUR 5 [R"SURSSSUR535 URR S 5S
:Xa&[UR
UR5S .5$[S 5$) u切换今日计划状态rIr))<01>name<6D> completedu切换今日计划状态: Nr_z... -> zx-requested-with<74>XMLHttpRequest)<02>status<75> status_textr/)rr<00>Statusr3<00>getrtrDrr1r^<00>get_status_display<61>headersrr)r5rJrl<00>pending_status<75>completed_statuss r<00>toggle_today_planr|%s<><00><00> <1C>Y<EFBFBD>2<EFBFBD> .<2E>D<EFBFBD><1B>^<5E>^<5E>'<27>'<27>Y<EFBFBD>'<27>7<>N<EFBFBD><1D>~<7E>~<7E>)<29>)<29>{<7B>)<29>;<3B><14>&*<2A>k<EFBFBD>k<EFBFBD>^<5E>&C<>"<22><1E>D<EFBFBD>K<EFBFBD><08>I<EFBFBD>I<EFBFBD>K<EFBFBD>
<EFBFBD>K<EFBFBD>K<EFBFBD>,<2C>T<EFBFBD>\<5C>\<5C>#<23>2<EFBFBD>-><3E>,?<3F>w<EFBFBD>t<EFBFBD>G^<5E>G^<5E>G`<60>Fa<46>b<>c<><0E><EFBFBD><EFBFBD><1A><1A>-<2D>.<2E>2B<32>B<><1B>t<EFBFBD>{<7B>{<7B>4<EFBFBD>CZ<43>CZ<43>C\<5C>]<5D>^<5E>^<5E> <13>L<EFBFBD> !<21>!r8c<00><><00>[R"S5 [R"5R 5nU[ SS9-
2026-01-04 19:17:33 +08:00
n[ RRUS9n[RRUS9n[RRUS9n[RRS5R[S5S9nUUUUUUS.n[US U5$)
2026-01-05 23:11:41 +08:00
u 生成报告u用户访问报告生成页面rr%r'<00>type<70>id<69><01>count<6E>r,r+r-r.r/<00>family_task_stats<74>core/report.html)rr1rr2r(r rr3r4rrr<00>values<65>annotater r)r5r,r+r-r.r/r<>r6s r<00>generate_reportr<74>4s<><00><00>
<EFBFBD>K<EFBFBD>K<EFBFBD>0<>1<> <14>L<EFBFBD>L<EFBFBD>N<EFBFBD> <1F> <1F> !<21>E<EFBFBD><15> <09>q<EFBFBD>)<29>)<29>I<EFBFBD>&<26>-<2D>-<2D>4<>4<>)<29>4<>D<><15>%<25>-<2D>-<2D>4<>4<>)<29>4<>D<><15><1B>"<22>"<22>)<29>)<29>u<EFBFBD>)<29>5<>J<EFBFBD>#<23>*<2A>*<2A>1<>1<>&<26>9<>B<>B<><15>t<EFBFBD><1B>B<>U<><15><17><1E>.<2E>.<2E> <20>.<2E> <06>G<EFBFBD> <12>'<27>-<2D>w<EFBFBD> 7<>7r8c<00><><00>[R"SU35 [R"US5R 5nU[ SS9-
2026-01-04 19:17:33 +08:00
n[ RRUS9n[RRUS9n[RRUS9n[RRS5R[S5S9nUUUUUUS .n[US
2026-01-05 23:11:41 +08:00
U5$) u查看指定日期的报告u用户查看报告: <20>%Y-%m-%drr%r'r~rr<>r<>r<>)rr1r<00>strptimer(r rr3r4rrrr<>r<>r r) r5r(<00> report_dater+r-r.r/r<>r6s r<00> view_reportr<74>Ps<><00><00>
<EFBFBD>K<EFBFBD>K<EFBFBD>&<26>t<EFBFBD>f<EFBFBD>-<2D>.<2E><1A>#<23>#<23>D<EFBFBD>*<2A>5<>:<3A>:<3A><<3C>K<EFBFBD><1B>i<EFBFBD>Q<EFBFBD>/<2F>/<2F>I<EFBFBD>&<26>-<2D>-<2D>4<>4<>)<29>4<>D<><15>%<25>-<2D>-<2D>4<>4<>)<29>4<>D<><15><1A>"<22>"<22>)<29>)<29>{<7B>)<29>;<3B>J<EFBFBD>#<23>*<2A>*<2A>1<>1<>&<26>9<>B<>B<><15>t<EFBFBD><1B>B<>U<><15><1D><1E>.<2E>.<2E> <20>.<2E> <06>G<EFBFBD> <12>'<27>-<2D>w<EFBFBD> 7<>7r8c<00><00>[5(d [R"S5 [SSS9$[R"SU35 [
2026-01-04 19:17:33 +08:00
R "US5R5nU[SS9-
n[RRUS 9n[RRUS 9n[RRUS 9n[RRS
5R![#S 5S 9nUUUUUUS .n[%USU5R&R)S5n SUS3n
[*R,R/[0R2U
5n [*R4"[0R2SS9 SSKJn U "U S9R;U 5 [R"SU 35 [=U S5n [U R?5SS9nSU
2026-01-05 23:11:41 +08:00
S3US'UsSSS5 $!,(df  g=f)u生成PDF报告<E68AA5>.WeasyPrint库不可用无法生成PDF报告u=PDF功能不可用请检查WeasyPrint库是否正确安装<E5AE89><E8A385><00>rtu用户生成PDF报告: r<>rr%r'r~rr<>r<><00>core/report_pdf.html<6D>utf-8<>report_<74>.pdfT<66><01>exist_okrr<00><01>stringuPDF报告生成成功: <20>rb<72>application/pdf)<01> content_typezattachment; filename="<22>"zContent-DispositionN) rr<00>errorrr1rr<>r(r rr3r4rrrr<>r<>r rr^<00>decode<64>os<6F>path<74>joinr <00> REPORTS_ROOT<4F>makedirsrr<00> write_pdf<64>open<65>read)r5r(r<>r+r-r.r/r<>r6<00> html_string<6E>pdf_file<6C>pdf_pathr<00>f<>responses r<00>generate_pdf_reportr<74>js<><00><00> "<22> $<24> $<24><0E> <0C> <0C>E<>F<><1B>[<5B>dg<64>h<>h<>
2026-01-04 19:17:33 +08:00
<EFBFBD>K<EFBFBD>K<EFBFBD>)<29>$<24><16>0<>1<><1A>#<23>#<23>D<EFBFBD>*<2A>5<>:<3A>:<3A><<3C>K<EFBFBD><1B>i<EFBFBD>Q<EFBFBD>/<2F>/<2F>I<EFBFBD>&<26>-<2D>-<2D>4<>4<>)<29>4<>D<><15>%<25>-<2D>-<2D>4<>4<>)<29>4<>D<><15><1A>"<22>"<22>)<29>)<29>{<7B>)<29>;<3B>J<EFBFBD>#<23>*<2A>*<2A>1<>1<>&<26>9<>B<>B<><15>t<EFBFBD><1B>B<>U<><15><1D><1E>.<2E>.<2E> <20>.<2E> <06>G<EFBFBD><19><17>"8<>'<27>B<>J<>J<>Q<>Q<>RY<52>Z<>K<EFBFBD><19><14><06>d<EFBFBD>#<23>H<EFBFBD><11>w<EFBFBD>w<EFBFBD>|<7C>|<7C>H<EFBFBD>1<>1<>8<EFBFBD><<3C>H<EFBFBD><07>K<EFBFBD>K<EFBFBD><08>%<25>%<25><04>5<> <20><08> <0B><1C>&<26>&<26>x<EFBFBD>0<>
<EFBFBD>K<EFBFBD>K<EFBFBD>)<29>(<28><1A>4<>5<>
<0E>h<EFBFBD><04> <1D><11><1F><01><06><06><08>7H<37>I<><08>,B<>8<EFBFBD>*<2A>A<EFBFBD>*N<><08>&<26>'<27><17>
<1E> <1D> <1D>s <00> #G9<03>9
2026-01-05 23:11:41 +08:00
Hc<00>b<00>[R"S5 [R"5nURS:Xa[[ UR US9nUR5(a1UR5 [R"S5 [S5$O [ US9nSU0n[USU5$)u 系统配置u用户访问系统配置页面r>rKu系统配置更新成功<E68890>system_settingsr@zcore/system_settings.html) rr1r<00>
get_configrAr#r>rCrDrr)r5<00>configr@r6s rr<>r<><00>s<><00><00>
2026-01-04 19:17:33 +08:00
<EFBFBD>K<EFBFBD>K<EFBFBD>0<>1<> <19> $<24> $<24> &<26>F<EFBFBD><0E>~<7E>~<7E><16><1F><1F><07> <0C> <0C>v<EFBFBD>><3E><04> <0F>=<3D>=<3D>?<3F>?<3F> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD> <12>K<EFBFBD>K<EFBFBD>2<> 3<><1B>-<2D>.<2E> .<2E> <1B>
2026-01-05 23:11:41 +08:00
 <20><16>0<><04><15>t<EFBFBD>n<EFBFBD>G<EFBFBD> <11>'<27>6<><07> @<40>@r8c<00>@<00>[5(d [R"S5 [SSS9$[R"S5 [
2026-01-04 19:17:33 +08:00
R "5R5nURS5n[R"5n[URURURUR/5(d![R"S5 [!S5$UnU[#S S
9-
n[$R&R)US 9n[*R&R)US 9n[,R&R)US 9n[.R&R1S 5R3[5S 5S9n UUUUUU S.n
[7USU
2026-01-05 23:11:41 +08:00
5R8R;S5n SUS3n [<R>RA[BRDU 5n [<RF"[BRDSS9 SSK$J%n U"U S9RMU 5 SU3nSU3nURnUR/n[OUUUUS9n[QU S5nURSU URU5S5 SSS5 URW5 [R"SUR35 [!S 5$!,(df  NM=f![Xa7n[R"S![[U535 [!S5sSnA$SnAff=f)"u手动发送邮件r<E4BBB6>u'PDF功能不可用无法发送邮件r<E4BBB6>r<>u用户手动发送邮件r<E4BBB6>u邮件配置不完整r<E695B4>rr%r'r~rr<>r<>r<>r<>r<>r<>Tr<54>rrr<>u家庭日报 - u$这是您的家庭日报,日期:)<04>subject<63>body<64>
from_email<EFBFBD>tor<6F>r<>Nu!邮件发送成功收件人r7u邮件发送失败:).rrr<>rr1rr2r(<00>strftimerr<>r[<00> smtp_server<65> smtp_username<6D> smtp_password<72>recipient_emailrr rr3r4rrrr<>r<>r rr^r<>r<>r<>r<>r r<>r<>rrr<>r r<><00>attachr<68><00>send<6E> Exception<6F>str)r5r,<00> today_strr<72>r<>r+r-r.r/r<>r6r<>r<>r<>rr<><00>messager<65><00>recipient_list<73>emailr<6C><00>es r<00>send_email_viewr<77><00>s<><00><00> "<22> $<24> $<24><0E> <0C> <0C>E<>F<><1B>E<>c<EFBFBD>R<>R<>
2026-01-04 19:17:33 +08:00
<EFBFBD>K<EFBFBD>K<EFBFBD>*<2A>+<2B> <14>L<EFBFBD>L<EFBFBD>N<EFBFBD> <1F> <1F> !<21>E<EFBFBD><15><0E><0E>z<EFBFBD>*<2A>I<EFBFBD><1A> $<24> $<24> &<26>F<EFBFBD> <0E><06>"<22>"<22>F<EFBFBD>$8<>$8<>&<26>:N<>:N<>PV<50>Pf<50>Pf<50>g<> h<> h<><0E> <0C> <0C>,<2C>-<2D><17>)<29>*<2A>*<2A><18>K<EFBFBD><1B>i<EFBFBD>Q<EFBFBD>/<2F>/<2F>I<EFBFBD>%<25>-<2D>-<2D>4<>4<>)<29>4<>D<><15>%<25>-<2D>-<2D>4<>4<>)<29>4<>D<><15><1A>"<22>"<22>)<29>)<29>{<7B>)<29>;<3B>J<EFBFBD>"<22>*<2A>*<2A>1<>1<>&<26>9<>B<>B<><15>t<EFBFBD><1B>B<>U<><15><1D><1E>.<2E>.<2E> <20>.<2E> <06>G<EFBFBD><19><17>"8<>'<27>B<>J<>J<>Q<>Q<>RY<52>Z<>K<EFBFBD><19><19> <0B>4<EFBFBD>(<28>H<EFBFBD><11>w<EFBFBD>w<EFBFBD>|<7C>|<7C>H<EFBFBD>1<>1<>8<EFBFBD><<3C>H<EFBFBD><06>K<EFBFBD>K<EFBFBD><08>%<25>%<25><04>5<> <20><08> <0B><1C>&<26>&<26>x<EFBFBD>0<> <20> <09>{<7B>+<2B>G<EFBFBD>4<>Y<EFBFBD>K<EFBFBD>@<40>G<EFBFBD><17>%<25>%<25>J<EFBFBD><1C>,<2C>,<2C>-<2D>N<EFBFBD> <18><17> <14><1D> <19>  <06>E<EFBFBD>
<0E>h<EFBFBD><04> <1D><11> <0A> <0C> <0C>X<EFBFBD>q<EFBFBD>v<EFBFBD>v<EFBFBD>x<EFBFBD>):<3A>;<3B>
<1E>+<2B> <0A>
<EFBFBD>
<EFBFBD> <0C><0E> <0B> <0B>7<><06>8N<38>8N<38>7O<37>P<>Q<><17><07> <20> <20>
<1E> <1D><> <15>+<2B><0E> <0C> <0C>,<2C>S<EFBFBD><11>V<EFBFBD>H<EFBFBD>5<>6<><17>)<29>*<2A>*<2A><>+<2B>s*<00>""K <03> =K<00>
K<07>
2026-01-05 23:11:41 +08:00
L<03>&,L<03>L<03>Lc<00><00>[U5$)u发送邮件别名)r<>)r5s r<00>
send_emailr<EFBFBD><00>s <00><00> <1A>7<EFBFBD> #<23>#r8):<3A>django.shortcutsrrr<00> django.httprr<00> django.utilsr<00>django.db.modelsr <00>django.core.mailr
r <00> django.confr rr r<><00>logururrr<00>modelsrrrrr<00>formsrr r!r"r#r7r<rGrNrQrSrVrXr\rardrfr/rjrmror|r<>r<>r<>r<>r<>r<><00>r8r<00><module>r<>s<><00><01>@<40>@<40>2<>!<21>"<22>4<> <20>(<28> <09><19><1C><14>
 <20><02><02><02><02>7<>:C<01>* =<3D> ><3E> @<01> =<3D> ><3E> @<01> ><3E> A<01> B<01> D<01> <<3C> @<01> A<01> C<01> "<22>8<>88<>4/<18>dA<01>$G+<2B>T$r8