1<!DOCTYPE html> 2 3<!--suppress ALL --> 4<html lang="zh-hans"> 5 6 <head> 7 <meta charset="UTF-8"> 8 <title>Pythonicç¼ç¨å享- 9 Home 10 - Blogin</title> 11 <meta name="viewport" content="width=device-width, initial-scale=1"> 12 <link rel="shortcut icon" href="/static/favicon.png" type="image/x-icon"> 13 <link rel="icon" href="/static/favicon.png" type="image/x-icon"> 14
14<script src="/static/jquery/jquery-3.5.1.min.js"></script>
14 15 <link rel="stylesheet" href="/static/css/base.css"> 16 <link rel="stylesheet" href="/static/css/ck.css"> 17 <link rel="stylesheet" href="/static/css/style.css"> 18 <link rel="stylesheet" href="/static/skeleton/jquery.skeleton.css"> 19
19<script src="/static/skeleton/jquery.scheletrone.js"></script>
19 20
20<script src="/static/js/base.js"></script>
20 21 22 <link rel="stylesheet" href="/static/bootstrap4/light/lux.bootstrap.min.css"> 23 <link rel="stylesheet" href="/static/css/light.css"> 24 25
25<script src="/static/popper/popper.min.js"></script>
25 26
26<script src="/static/bootstrap-4.5.3-dist/js/bootstrap.min.js"></script>
26 27 <link rel="stylesheet" href="/static/font-awesome-4.7.0/css/font-awesome.css"> 28
28<script src="/static/js/moment-with-locales.min.js"></script>
vendor: 1 bytes, line 28
28
29<script> 30moment.locale("en"); 31function flask_moment_render(elem) { 32 timestamp = moment($(elem).data('timestamp')); 33 func = $(elem).data('function'); 34 format = $(elem).data('format'); 35 timestamp2 = $(elem).data('timestamp2'); 36 no_suffix = $(elem).data('nosuffix'); 37 args = []; 38 if (format) 39 args.push(format); 40 if (timestamp2) 41 args.push(moment(timestamp2)); 42 if (no_suffix) 43 args.push(no_suffix); 44 $(elem).text(timestamp[func].apply(timestamp, args)); 45 $(elem).removeClass('flask-moment').show(); 46} 47function flask_moment_render_all() { 48 $('.flask-moment').each(function() { 49 flask_moment_render(this); 50 if ($(this).data('refresh')) { 51 (function(elem, interval) { setInterval(function() { flask_moment_render(elem) }, interval); })(this, $(this).data('refresh')); 52 } 53 }) 54} 55$(document).ready(function() { 56 flask_moment_render_all(); 57}); 58</script>
58 59
59<script src="/static/echarts-4.9.0/echarts.min.js"></script>
59 60 <style> 61 .gray-a { 62 text-decoration: none; 63 color: rgba(0, 0, 0, .5); 64 } 65 66 .gray-a:hover { 67 color: forestgreen; 68 text-decoration: none; 69 } 70 </style> 71
71<script> 72 var _hmt = _hmt || []; 73 (function () { 74 var hm = document.createElement("script"); 75 hm.src = "https://hm.baidu.com/hm.js?499b91ba844d6acdd945978a6b873e55"; 76 var s = document.getElementsByTagName("script")[0]; 77 s.parentNode.insertBefore(hm, s); 78 })(); 79 </script>
79 80 </head> 81 82 83 84 <nav style="flex: none" class="navbar navbar-expand-lg bg-nav justify-content-between"> 85 <a class="navbar-brand nav-text" href="/"> 86 87 <img src="/static/img/logo.png" alt="logo" width="104px" height="36px"> 88 89 </a> 90 <button class="navbar-toggler navbar-light bg-light" 91 type="button" data-toggle="collapse" data-target="#collapsibleNavbar"> 92 <span class="navbar-toggler-icon"></span> 93 </button> 94 <div class="navbar-collapse collapse" id="collapsibleNavbar"> 95 <ul class="navbar-nav mr-auto"> 96 97 <li class="nav-item" style="margin-right: 50px;"> 98 <a class="nav-link nav-text nav-active" href="/index/"> 99 <i class="fa fa-home"></i> 100 主页 101 </a> 102 </li> 103 104 105 <li class="nav-item" style="margin-right: 50px;"> 106 <a class="nav-link nav-text " href="/gallery/all/"> 107 <i class="fa fa-photo"></i> 108 ç¸å 109 </a> 110 </li> 111 112 113 <li class="nav-item" style="margin-right: 50px;"> 114 <a class="nav-link nav-text " href="/blogs/archive/"> 115 <i class="fa fa-archive"></i> 116 彿¡£ 117 </a> 118 </li> 119 120 121 <li class="nav-item" style="margin-right: 50px;"> 122 <a class="nav-link nav-text " href="/tool/"> 123 <i class="fa fa-steam"></i> 124 å·¥å · 125 </a> 126 </li> 127 128 129 130 <li class="nav-item dropdown " style="margin-right: 50px;"> 131 <a class="nav-link nav-text dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 132 <i class="fa fa-subway"></i> SOUL 133 </a> 134 <div class="dropdown-menu mt-0 rounded-0 border-0" aria-labelledby="navbarDropdown"> 135 136 <a class="dropdown-item" href="/soul/"><i class="fa fa-file-code-o mr-2"></i>æ¯é¸¡æ±¤</a> 137 138 <a class="dropdown-item" href="/ts-poem/"><i class="fa fa-file-text-o mr-2"></i>åå®è¯</a> 139 140 <a class="dropdown-item" href="/song-ci/"><i class="fa fa-file-text mr-2"></i>å®è¯</a> 141 142 <a class="dropdown-item" href="/api/introduce/"><i class="fa fa-exchange mr-2"></i>API</a> 143 144 <a class="dropdown-item" href="/rss-feed/index/"><i class="fa fa-rss-square mr-2"></i>RSS</a> 145 146 <a class="dropdown-item" href="/timeline/"><i class="fa fa-list-ol mr-2"></i>å»ºç«æ¥å¿</a> 147 148 149 150 151 152 153 </div> 154 </li> 155 156 </ul> 157 <form class="form-inline my-2 my-lg-0 mr-4 f-17" method="get" action="/search"> 158 <input class="form-control mr-sm-2 " type="search" name="q" placeholder="æç´¢å ³é®å" aria-label="Search" 159 required> 160 <button class="btn btn-outline-success my-2 my-sm-0" type="submit">æç´¢</button> 161 </form> 162 163 <ul class="navbar-nav f-17"> 164 <li class="nav-item"><a class="nav-link nav-text" href="/auth/login/">ç»å½</a></li> 165 <li class="nav-item"><a class="nav-link nav-text" href="/auth/register/">注å</a></li> 166 </ul> 167 168 </div> 169 </nav> 170 171 172 <main> 173
173<script> 174var locale = window.navigator.userLanguage || window.navigator.language; 175moment.locale(locale); 176</script>
176 177 <br> 178 <div class="container"> 179 180 <div class="row"> 181 <div class="col-lg-8"> 182 <!-- Author's brief information --> 183 <div class="card mb-3"> 184 <div class="text-muted card-header "> 185 <strong>æ¸ æ°´</strong>çä¸ªäººèµæ 186 </div> 187 <div class="card-body"> 188 <div class="row"> 189 <div class="col-3"> 190 <img class="img-fluid rounded" alt="OwnerAvatar" src="/accounts/avatar/Macvcarton-avatar.png"> 191 </div> 192 <div class="col-9"> 193 <h3><strong>Blogin</strong></h3> 194 <p class="text-muted">个人ç½ç«: <i class="fa fa-link"></i> <a class="text-muted gray-a" href="http://2dogz.cn" target="_blank">æ¸ æ°´ç个人ç½ç«</a></p> 195 <p class="text-muted">å»ºç«æ¶é´: <i class="fa fa-clock-o"></i> 2020-08-27</p> 196 <p class="text-muted">èç³»é®ç®±: <i class="fa fa-envelope"></i> <a class="text-decoration-none text-muted" href="mailto:[email protected]">[email protected]</a></p> 197 <br> 198 <a href="/loveme/" title="æ»å ±è¢«ç¹èµ4301次" class="btn btn-danger float-right"><i class="fa fa-heart-o"></i></a> 199 </div> 200 </div> 201 </div> 202 </div> 203 <!-- Post list --> 204 <div class="summary-list"> 205 206 <div class="media mb-1 mb-sm-2 p-2 p-lg-3 blog-brief-div blog-content-brief-div top-post-div"> 207 <div class="align-self-center mr-2 mr-lg-3 w-25 modal-open"> 208 <a href="/blog/article/29/"> 209 <img class="w-100 article-img" src="/backend/blog/img/2021-02-07/u=3435461981,3098770637&fm=26&gp=0.jpg" alt="ç»ngxinæå¡å¨æ·»å HTTPS"> 210 </a> 211 </div> 212 <div class="media-body"> 213 <div class="text-muted mb-2 f-12"> 214 <span class="badge badge-inverse"><i class="fa fa-user"></i> æ¸ æ°´</span> 215 <span class="badge badge-inverse" title="2021-02-07 14:23:49"><i class="fa fa-calendar-times-o ml-2 mr-1"></i><span class="flask-moment" data-timestamp="2021-02-07T14:23:49" data-function="fromNow" data-refresh="60000" style="display: none">2021-02-07T14:23:49</span></span> 216 </div> 217 <h5 class="title-brief"> 218 <a style="text-decoration: none;" href="/blog/article/29/">ç»ngxinæå¡å¨æ·»å HTTPS</a> 219 </h5> 220 <p class="d-none d-sm-block mb-2 f-15">ä¹åå¨v2exåå¸ï¼å¾å¤å¤§ä½¬é½dissææ²¡ææè¿ä¸ªç½ç«ä¸HTTPSï¼ä¸ªäººè§å¾ä¸ä¸ªç§äººçå客ç½ç«æ²¡æä»ä¹å¿ è¦å»ä¸HTTPSï¼æä»¥å°±ä¸ç´æ²¡æå¼ï¼çäºé£ä¹å¤å¤§ä½¬dissï¼æåè¿æ¯æè¿ä¸ªå客ç½ç«ä¸äºHT...</p> 221 <p class="d-block d-sm-none mb-2 f-15">ä¹åå¨v2exåå¸ï¼å¾å¤å¤§ä½¬é½dissææ²¡ææè¿ä¸ªç½ç«ä¸HTTPSï¼ä¸ªäººè§å¾ä¸ä¸ªç§äººçå客ç½ç«...</p> 222 <div class="text-muted mb-0 f-12"> 223 <a style="text-decoration: none;" href="/blog/cate/2/" title="æ¥çæ´å¤å½ååç±»ä¸å客"> 224 <span class="badge badge-inverse"><i class="fa fa-book mr-1"></i>åºç¨é¨ç½²</span> 225 </a>
226 <span class="badge badge-inverse"><i class="fa fa-eye ml-2 mr-1"></i>4592</span> 227 <span class="badge badge-inverse"><i class="fa fa-comment-o ml-2 mr-1"></i>13</span> 228 </div> 229 </div> 230 </div> 231 232 <div class="media mb-1 mb-sm-2 p-2 p-lg-3 blog-brief-div blog-content-brief-div "> 233 <div class="align-self-center mr-2 mr-lg-3 w-25 modal-open"> 234 <a href="/blog/article/66/"> 235 <img class="w-100 article-img" src="/backend/blog/img/2026-07-11/wechat_2026-07-11_105219_182.png" alt="Ubuntu ä¸ Edge æ æ³ä¿åå¯ç åèªå¨å¡«å ï¼ä¸ä»½å¯å¤ç°çææ¥ä¸ä¿®å¤æå"> 236 </a> 237 </div> 238 <div class="media-body"> 239 <div class="text-muted mb-2 f-12"> 240 <span class="badge badge-inverse"><i class="fa fa-user"></i> æ¸ æ°´</span> 241 <span class="badge badge-inverse" title="2026-07-11 10:52:53"><i class="fa fa-calendar-times-o ml-2 mr-1"></i><span class="flask-moment" data-timestamp="2026-07-11T10:52:53" data-function="fromNow" data-refresh="60000" style="display: none">2026-07-11T10:52:53</span></span> 242 </div> 243 <h5 class="title-brief"> 244 <a style="text-decoration: none;" href="/blog/article/66/">Ubuntu ä¸ Edge æ æ³ä¿åå¯ç åèªå¨å¡«å ï¼ä¸ä»½å¯å¤ç°çææ¥ä¸ä¿®å¤æå</a> 245 </h5> 246 <p class="d-none d-sm-block mb-2 f-15">è¿æ¬¡éå°çé®é¢æ¯ï¼å¨ Ubuntu ä¸ä½¿ç¨ Edge æµè§å¨æ¶ï¼å¯ç ä¿ååèªå¨å¡«å çªç¶å¤±æã 表ç°ä¸ºç»å½ç½ç«åä¸å稳å®å¼¹åºâä¿åå¯ç âï¼æè ä¿ååé弿µè§å¨ä¸èªå¨å¡«å ã</p> 247 <p class="d-block d-sm-none mb-2 f-15">è¿æ¬¡éå°çé®é¢æ¯ï¼å¨ Ubuntu ä¸ä½¿ç¨ Edge æµè§å¨æ¶ï¼å¯ç ä¿ååèªå¨å¡«å çªç¶å¤±æã...</p> 248 <div class="text-muted mb-0 f-12"> 249 <a style="text-decoration: none;" href="/blog/cate/4/" title="æ¥çæ´å¤å½ååç±»ä¸å客"> 250 <span class="badge badge-inverse"><i class="fa fa-book mr-1"></i>Linux</span> 251 </a> 252 <span class="badge badge-inverse"><i class="fa fa-eye ml-2 mr-1"></i>248</span> 253 <span class="badge badge-inverse"><i class="fa fa-comment-o ml-2 mr-1"></i>0</span> 254 </div> 255 </div> 256 </div> 257 258 <div class="media mb-1 mb-sm-2 p-2 p-lg-3 blog-brief-div blog-content-brief-div "> 259 <div class="align-self-center mr-2 mr-lg-3 w-25 modal-open"> 260 <a href="/blog/article/65/"> 261 <img class="w-100 article-img" src="/backend/blog/img/2026-02-13/æ°å¯¹è¯.png" alt="ç»åä¼äºç»§æ¿ï¼ç¨ Python è®²æ¸ æ¥è®¾è®¡åè"> 262 </a> 263 </div> 264 <div class="media-body"> 265 <div class="text-muted mb-2 f-12"> 266 <span class="badge badge-inverse"><i class="fa fa-user"></i> æ¸ æ°´</span> 267 <span class="badge badge-inverse" title="2026-02-13 21:13:28"><i class="fa fa-calendar-times-o ml-2 mr-1"></i><span class="flask-moment" data-timestamp="2026-02-13T21:13:28" data-function="fromNow" data-refresh="60000" style="display: none">2026-02-13T21:13:28</span></span> 268 </div> 269 <h5 class="title-brief"> 270 <a style="text-decoration: none;" href="/blog/article/65/">ç»åä¼äºç»§æ¿ï¼ç¨ Python è®²æ¸ æ¥è®¾è®¡åè</a> 271 </h5> 272 <p class="d-none d-sm-block mb-2 f-15">æè¿å¨å¦ä¹ Goè¯è¨ï¼åç°Go䏿²¡æOOPçç»§æ¿ç¹æ§ï¼å ç»å¨ææç´¢ï¼åç°ä¸ç§ä¼äºç»§æ¿ç设计æ¹å¼ï¼ç»åã</p> 273 <p class="d-block d-sm-none mb-2 f-15">æè¿å¨å¦ä¹ Goè¯è¨ï¼åç°Go䏿²¡æOOPçç»§æ¿ç¹æ§ï¼å ç»å¨ææç´¢ï¼åç°ä¸ç§ä¼äºç»§æ¿ç设计æ¹å¼ï¼ç»åã</p> 274 <div class="text-muted mb-0 f-12"> 275 <a style="text-decoration: none;" href="/blog/cate/3/" title="æ¥çæ´å¤å½ååç±»ä¸å客">
276 <span class="badge badge-inverse"><i class="fa fa-book mr-1"></i>Python</span> 277 </a> 278 <span class="badge badge-inverse"><i class="fa fa-eye ml-2 mr-1"></i>520</span> 279 <span class="badge badge-inverse"><i class="fa fa-comment-o ml-2 mr-1"></i>0</span> 280 </div> 281 </div> 282 </div> 283 284 <div class="media mb-1 mb-sm-2 p-2 p-lg-3 blog-brief-div blog-content-brief-div "> 285 <div class="align-self-center mr-2 mr-lg-3 w-25 modal-open"> 286 <a href="/blog/article/64/"> 287 <img class="w-100 article-img" src="/backend/blog/img/2025-01-18/çæ Python å®£ä¼ å¾.png" alt="Pythonä¸ä¸æç®¡ç"> 288 </a> 289 </div> 290 <div class="media-body"> 291 <div class="text-muted mb-2 f-12"> 292 <span class="badge badge-inverse"><i class="fa fa-user"></i> æ¸ æ°´</span> 293 <span class="badge badge-inverse" title="2025-01-18 14:53:07"><i class="fa fa-calendar-times-o ml-2 mr-1"></i><span class="flask-moment" data-timestamp="2025-01-18T14:53:07" data-function="fromNow" data-refresh="60000" style="display: none">2025-01-18T14:53:07</span></span> 294 </div> 295 <h5 class="title-brief"> 296 <a style="text-decoration: none;" href="/blog/article/64/">Pythonä¸ä¸æç®¡ç</a> 297 </h5> 298 <p class="d-none d-sm-block mb-2 f-15">å¨Pythonä¸æä¸ªå ¶ä»è¯è¨æ²¡æå ³é®åwithï¼æä»¬ä¸è¬å¨æ¥å¸¸ä¸ä½¿ç¨çæ¯è¾å¤çå°±æ¯éè¿withæ¥æä½æä»¶ï¼æ¬ç¯æç« æ·±å ¥äºè§£ä¸ä¸å ¶å®ç°åçã</p> 299 <p class="d-block d-sm-none mb-2 f-15">å¨Pythonä¸æä¸ªå ¶ä»è¯è¨æ²¡æå ³é®åwithï¼æä»¬ä¸è¬å¨æ¥å¸¸ä¸ä½¿ç¨çæ¯è¾å¤çå°±æ¯éè¿with...</p> 300 <div class="text-muted mb-0 f-12"> 301 <a style="text-decoration: none;" href="/blog/cate/1/" title="æ¥çæ´å¤å½ååç±»ä¸å客"> 302 <span class="badge badge-inverse"><i class="fa fa-book mr-1"></i>Leetcode</span> 303 </a> 304 <span class="badge badge-inverse"><i class="fa fa-eye ml-2 mr-1"></i>3469</span> 305 <span class="badge badge-inverse"><i class="fa fa-comment-o ml-2 mr-1"></i>0</span> 306 </div> 307 </div> 308 </div> 309 310 <div class="media mb-1 mb-sm-2 p-2 p-lg-3 blog-brief-div blog-content-brief-div "> 311 <div class="align-self-center mr-2 mr-lg-3 w-25 modal-open"> 312 <a href="/blog/article/62/"> 313 <img class="w-100 article-img" src="/backend/blog/img/2024-10-23/Snipaste_2024-10-23_00-24-55.jpg" alt="gunicorné¨ç½²å¤è¿ç¨ä¸æ¯flaskåºç¨æ æ³å·æ°é ç½®é®é¢"> 314 </a> 315 </div> 316 <div class="media-body"> 317 <div class="text-muted mb-2 f-12"> 318 <span class="badge badge-inverse"><i class="fa fa-user"></i> æ¸ æ°´</span> 319 <span class="badge badge-inverse" title="2024-04-03 23:02:02"><i class="fa fa-calendar-times-o ml-2 mr-1"></i><span class="flask-moment" data-timestamp="2024-04-03T23:02:02" data-function="fromNow" data-refresh="60000" style="display: none">2024-04-03T23:02:02</span></span> 320 </div> 321 <h5 class="title-brief"> 322 <a style="text-decoration: none;" href="/blog/article/62/">gunicorné¨ç½²å¤è¿ç¨ä¸æ¯flaskåºç¨æ æ³å·æ°é ç½®é®é¢</a> 323 </h5> 324 <p class="d-none d-sm-block mb-2 f-15">gunicornæ¯ä¸ä¸ªPythonçWSGIå·¥å ·ï¼ç¸è¾äºflaskçå ç½®å¼åæå¡å¨ï¼å ¶å ·æé«æ§è½ãå¤å¹¶åçç¹æ§ï¼ä¸è¬å¨ç产ç¯å¢ä½¿ç¨çæ¯è¾å¤ï¼æ¬ç¯æç« ä»ç»ä¸ä¸å¨é¨ç½²ä¸éå°çä¸å¼åç¯å¢ç»æä¸ä¸è´çé®é¢ã</p> 325 <p class="d-block d-sm-none mb-2 f-15">gunicornæ¯ä¸ä¸ªPythonçWSGIå·¥å ·ï¼ç¸è¾äºflaskçå ç½®å¼åæå¡å¨ï¼å ¶å ·æé«æ§...</p> 326 <div class="text-muted mb-0 f-12"> 327 <a style="text-decoration: none;" href="/blog/cate/2/" title="æ¥çæ´å¤å½ååç±»ä¸å客">
328 <span class="badge badge-inverse"><i class="fa fa-book mr-1"></i>åºç¨é¨ç½²</span> 329 </a> 330 <span class="badge badge-inverse"><i class="fa fa-eye ml-2 mr-1"></i>4331</span> 331 <span class="badge badge-inverse"><i class="fa fa-comment-o ml-2 mr-1"></i>4</span> 332 </div> 333 </div> 334 </div> 335 336 <div class="media mb-1 mb-sm-2 p-2 p-lg-3 blog-brief-div blog-content-brief-div "> 337 <div class="align-self-center mr-2 mr-lg-3 w-25 modal-open"> 338 <a href="/blog/article/61/"> 339 <img class="w-100 article-img" src="/backend/blog/img/2024-01-28/pydal.JPG" alt="web2pyåå»ºæ°æ®åºè¡¨å¢å èªå¨å建æ®éç´¢å¼åè½"> 340 </a> 341 </div> 342 <div class="media-body"> 343 <div class="text-muted mb-2 f-12"> 344 <span class="badge badge-inverse"><i class="fa fa-user"></i> æ¸ æ°´</span> 345 <span class="badge badge-inverse" title="2024-01-28 16:38:21"><i class="fa fa-calendar-times-o ml-2 mr-1"></i><span class="flask-moment" data-timestamp="2024-01-28T16:38:21" data-function="fromNow" data-refresh="60000" style="display: none">2024-01-28T16:38:21</span></span> 346 </div> 347 <h5 class="title-brief"> 348 <a style="text-decoration: none;" href="/blog/article/61/">web2pyåå»ºæ°æ®åºè¡¨å¢å èªå¨å建æ®éç´¢å¼åè½</a> 349 </h5> 350 <p class="d-none d-sm-block mb-2 f-15">å¨Python常è§çORMæ¡æ¶ä¸é½æ¯æå¨åå»ºæ°æ®åºåæ®µçæ¶åéè¿index=Trueçæ¹å¼èªå¨ç»å段å建æ®éç´¢å¼çåè½ï¼æ¯å¦DjangoçORM以åSQLAlchemyçï¼ä½æ¯web2pyçæ°æ®...</p> 351 <p class="d-block d-sm-none mb-2 f-15">å¨Python常è§çORMæ¡æ¶ä¸é½æ¯æå¨åå»ºæ°æ®åºåæ®µçæ¶åéè¿index=Trueçæ¹å¼èªå¨...</p> 352 <div class="text-muted mb-0 f-12"> 353 <a style="text-decoration: none;" href="/blog/cate/3/" title="æ¥çæ´å¤å½ååç±»ä¸å客"> 354 <span class="badge badge-inverse"><i class="fa fa-book mr-1"></i>Python</span> 355 </a> 356 <span class="badge badge-inverse"><i class="fa fa-eye ml-2 mr-1"></i>4754</span> 357 <span class="badge badge-inverse"><i class="fa fa-comment-o ml-2 mr-1"></i>6</span> 358 </div> 359 </div> 360 </div> 361 362 <div class="media mb-1 mb-sm-2 p-2 p-lg-3 blog-brief-div blog-content-brief-div "> 363 <div class="align-self-center mr-2 mr-lg-3 w-25 modal-open"> 364 <a href="/blog/article/60/"> 365 <img class="w-100 article-img" src="/backend/blog/img/2023-09-18/output.png" alt="Gerritæ¥å£ä½¿ç¨è¯´æ"> 366 </a> 367 </div> 368 <div class="media-body"> 369 <div class="text-muted mb-2 f-12"> 370 <span class="badge badge-inverse"><i class="fa fa-user"></i> æ¸ æ°´</span> 371 <span class="badge badge-inverse" title="2023-09-18 23:55:56"><i class="fa fa-calendar-times-o ml-2 mr-1"></i><span class="flask-moment" data-timestamp="2023-09-18T23:55:56" data-function="fromNow" data-refresh="60000" style="display: none">2023-09-18T23:55:56</span></span> 372 </div> 373 <h5 class="title-brief"> 374 <a style="text-decoration: none;" href="/blog/article/60/">
374Gerritæ¥å£ä½¿ç¨è¯´æ</a> 375 </h5> 376 <p class="d-none d-sm-block mb-2 f-15">Gerritæ¯ä¸æ¬¾åè½å¼ºå¤§ç代ç åä½å¼å管çå·¥å ·ï¼å ¶å¼ºå¶ç代ç å®¡æ ¸åè½ï¼æ¯å ¶æå¤§äº®ç¹ãç¹è²ä¹ä¸ï¼åæ¶è¿æç»åå°åæ¯çæéæ§å¶çï¼æ¬ç³»åç¨æ¥æ»ç»Gerritç¸å ³è°ç å 容ã</p> 377 <p class="d-block d-sm-none mb-2 f-15">Gerritæ¯ä¸æ¬¾åè½å¼ºå¤§ç代ç åä½å¼å管çå·¥å ·ï¼å ¶å¼ºå¶ç代ç å®¡æ ¸åè½ï¼æ¯å ¶æå¤§äº®ç¹ãç¹è²ä¹ä¸...</p> 378 <div class="text-muted mb-0 f-12"> 379 <a style="text-decoration: none;" href="/blog/cate/5/" title="æ¥çæ´å¤å½ååç±»ä¸å客"> 380 <span class="badge badge-inverse"><i class="fa fa-book mr-1"></i>Git</span> 381 </a> 382 <span class="badge badge-inverse"><i class="fa fa-eye ml-2 mr-1"></i>5011</span> 383 <span class="badge badge-inverse"><i class="fa fa-comment-o ml-2 mr-1"></i>7</span> 384 </div> 385 </div> 386 </div> 387 388 <div class="media mb-1 mb-sm-2 p-2 p-lg-3 blog-brief-div blog-content-brief-div "> 389 <div class="align-self-center mr-2 mr-lg-3 w-25 modal-open"> 390 <a href="/blog/article/59/"> 391 <img class="w-100 article-img" src="/backend/blog/img/2023-07-09/Snipaste_2023-07-09_12-46-50.jpg" alt="Flask-SQLAlchemyä¸äºé«çº§ç¨æ³è®°å½(2)"> 392 </a> 393 </div> 394 <div class="media-body"> 395 <div class="text-muted mb-2 f-12"> 396 <span class="badge badge-inverse"><i class="fa fa-user"></i> æ¸ æ°´</span> 397 <span class="badge badge-inverse" title="2023-07-09 12:47:19"><i class="fa fa-calendar-times-o ml-2 mr-1"></i><span class="flask-moment" data-timestamp="2023-07-09T12:47:19" data-function="fromNow" data-refresh="60000" style="display: none">2023-07-09T12:47:19</span></span> 398 </div> 399 <h5 class="title-brief"> 400 <a style="text-decoration: none;" href="/blog/article/59/">Flask-SQLAlchemyä¸äºé«çº§ç¨æ³è®°å½(2)</a> 401 </h5> 402 <p class="d-none d-sm-block mb-2 f-15">å¨ä¸ä¸èä¸ä»ç»äºå¦ä½ä½¿ç¨Mixinå»å®ä¹å ¬å ±åæ®µï¼æè¿å¨å®é å·¥ä½ä¸éå°äºä¸äºé®é¢ï¼åæ¶ä¹å¦å°äºä¸äºæ°çé«çº§ç¨æ³ï¼å¨æ¬æä¸è®°å½ä¸ä¸ã</p> 403 <p class="d-block d-sm-none mb-2 f-15">å¨ä¸ä¸èä¸ä»ç»äºå¦ä½ä½¿ç¨Mixinå»å®ä¹å ¬å ±åæ®µï¼æè¿å¨å®é å·¥ä½ä¸éå°äºä¸äºé®é¢ï¼åæ¶ä¹å¦å°äº...</p> 404 <div class="text-muted mb-0 f-12"> 405 <a style="text-decoration: none;" href="/blog/cate/3/" title="æ¥çæ´å¤å½ååç±»ä¸å客"> 406 <span class="badge badge-inverse"><i class="fa fa-book mr-1"></i>Python</span> 407 </a> 408 <span class="badge badge-inverse"><i class="fa fa-eye ml-2 mr-1"></i>4977</span> 409 <span class="badge badge-inverse"><i class="fa fa-comment-o ml-2 mr-1"></i>7</span> 410 </div> 411 </div> 412 </div> 413 414 </div> 415 416 <div class="float-right"> 417 <nav aria-label="Page navigation"> 418 <ul class="pagination "> 419 <li class="page-item disabled"> 420 <a class="page-link" 421 href="#">
422 <span aria-hidden="true">←</span> 423 </a> 424 </li> 425 <li class="page-item "> 426 <a class="page-link" 427 href="/index/?page=2"> 428 <span aria-hidden="true">→</span> 429 </a> 430 </li> 431 </ul> 432 </nav> 433 </div> 434 435 </div> 436 <div class="col-lg-4"> 437 <!--suppress ALL --> 438<div class="card mb-3"> 439 <div class="card-header p-2 f-17"> 440 <div class="d-flex"> 441 <b class="flex-grow-1"><i class="fa fa-coffee" aria-hidden="true"></i> æ¯æ¥ä¸å¥</b> 442 443 <a style="margin-bottom: 0px" href="/themes/dark/"><i 444 class="fa fa-moon-o"></i></a> 445 446 </div> 447 </div> 448 <div id="oneWord" class="card-body p-2 f-15"> 449 <!-- <i class="fa fa-spinner fa-spin f-hint"></i> --> 450 <p class="mb-1">æ¯æ¥ä¸å¥</p> 451 </div> 452</div> 453 454<!-- githubå¡ç --> 455<div class="card mb-3 mt-2"> 456 <div class="card-header p-2 f-17"> 457 <strong><i class="fa fa-github"></i> Github</strong> 458 </div> 459 <div class="card-body p-2 f-15"> 460 <div id="github-card"> 461 <div style="border-bottom: 1px solid rgba(58,10,10,0.19); margin-bottom: 5px;padding-bottom: 3px;" 462 class="d-flex"> 463 <a href="https://github.com/weijiang1994/" target="_blank"><img class="avatar-s" id="githubAvatar" 464 alt="avatar" 465 src="/static/github-avatar.png"></a> 466 <div class="ml-2"> 467 <h5 class="mb-0"><b>Blogin</b></h5> 468 </div> 469 <a class="btn btn-sm btn-light h-25" id="githubStar" hidden="hidden" 470 href="https://github.com/weijiang1994/Blogin" target="_blank">Star</a> 471 </div> 472 <div id="shield-svg" class="text-left pr-1"> 473 <p class="mb-1 d-block">shield</p> 474 </div> 475 </div> 476 477 </div> 478</div> 479 480<!-- è¿æè®¡åå¡ç --> 481<div class="card mb-3 mt-2"> 482 <div class="card-header p-2 f-17"> 483 <strong><i class="fa fa-tasks"></i> è¿æè®¡å</strong> 484 </div> 485 <div class="card-body p-2 f-15"> 486 487 488 <p style="margin-bottom: 2px">Webç³»åæç¨</p> 489 <div class="progress" title="计å卿20,已宿8" style="height: 10px"> 490 <div class="progress-bar bg-info" style="width:40.0%"></div> 491 </div> 492 493 <p style="margin-bottom: 2px">åè¥~~~~~åååå~~~~</p> 494 <div class="progress" title="计å卿30,已宿0" style="height: 10px"> 495 <div class="progress-bar bg-info" style="width:0.0%"></div> 496 </div> 497 498 </div> 499</div> 500 501<!-- æè¿å¨æå¡ç --> 502<div class="card mb-3 mt-2"> 503 <div class="card-header p-2 f-17"> 504 <strong><i class="fa fa-github"></i> æè¿æ´»å¨</strong> 505 </div> 506 <div class="card-body p-2 f-15"> 507 <div style="width:100%;height:130px;" id="contribute" class="row text-center"> 508 </div> 509 </div> 510</div> 511 512<!-- å客åç±» --> 513<div class="card mb-3 mt-2"> 514 <div class="card-header p-2 f-17"> 515 <strong><i class="fa fa-book"></i> æç« ç±»å«</strong> 516 </div> 517 <ul class="list-group list-group-flush f-16"> 518 519 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 520 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/1/" 521 title="æ¥çLeetcode䏿ææç« ">Leetcode</a> 522 <span class="badge badge-pill badge-success" 523 title="å½ååç±»ä¸æ2ç¯æç« ">2</span> 524 </li> 525 526 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 527 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/2/" 528 title="æ¥çåºç¨é¨ç½²ä¸æææç« ">åºç¨é¨ç½²</a>
529 <span class="badge badge-pill badge-success" 530 title="å½ååç±»ä¸æ12ç¯æç« ">12</span> 531 </li> 532 533 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 534 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/3/" 535 title="æ¥çPython䏿ææç« ">Python</a> 536 <span class="badge badge-pill badge-success" 537 title="å½ååç±»ä¸æ21ç¯æç« ">21</span> 538 </li> 539 540 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 541 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/4/" 542 title="æ¥çLinux䏿ææç« ">Linux</a> 543 <span class="badge badge-pill badge-success" 544 title="å½ååç±»ä¸æ7ç¯æç« ">7</span> 545 </li> 546 547 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 548 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/5/" 549 title="æ¥çGit䏿ææç« ">Git</a> 550 <span class="badge badge-pill badge-success" 551 title="å½ååç±»ä¸æ3ç¯æç« ">3</span> 552 </li> 553 554 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 555 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/6/" 556 title="æ¥çç³»åæç¨ä¸æææç« ">ç³»åæç¨</a> 557 <span class="badge badge-pill badge-success" 558 title="å½ååç±»ä¸æ10ç¯æç« ">10</span> 559 </li> 560 561 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 562 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/7/" 563 title="æ¥çéè¯æ»¥è°ä¸æææç« ">éè¯æ»¥è°</a> 564 <span class="badge badge-pill badge-success" 565 title="å½ååç±»ä¸æ4ç¯æç« ">4</span> 566 </li> 567 568 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 569 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/8/" 570 title="æ¥çMySQL䏿ææç« ">MySQL</a> 571 <span class="badge badge-pill badge-success" 572 title="å½ååç±»ä¸æ3ç¯æç« ">3</span> 573 </li> 574 575 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 576 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/9/" 577 title="æ¥çå端å¼å䏿ææç« ">å端å¼å</a> 578 <span class="badge badge-pill badge-success" 579 title="å½ååç±»ä¸æ1ç¯æç« ">1</span> 580 </li> 581 582 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 583 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/10/" 584 title="æ¥çæµè¯ç¸å ³ä¸æææç« ">æµè¯ç¸å ³</a> 585 <span class="badge badge-pill badge-success" 586 title="å½ååç±»ä¸æ1ç¯æç« ">1</span> 587 </li> 588 589 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 590 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/11/" 591 title="æ¥çå¥½ææ¶å½ä¸æææç« ">å¥½ææ¶å½</a> 592 <span class="badge badge-pill badge-success" 593 title="å½ååç±»ä¸æ1ç¯æç« ">1</span> 594 </li> 595 596 <li class="list-group-item d-flex justify-content-between align-items-center pr-2 py-2"> 597 <a style="text-decoration: none" class="text-info-a" href="/blog/cate/12/" 598 title="æ¥ççµå游æä¸æææç« ">çµå游æ</a>
599 <span class="badge badge-pill badge-success" 600 title="å½ååç±»ä¸æ1ç¯æç« ">1</span> 601 </li> 602 603 </ul> 604</div> 605 606<!-- çè¨æ¿ --> 607<div class="card mb-3 mt-2"> 608 <div class="card-header p-2 f-17"> 609 <div class="d-flex"> 610 <b class="flex-grow-1"><i class="fa fa-weixin" aria-hidden="true"></i> çè¨æ¿</b> 611 <a style="margin-bottom: 0px" class="text-decoration-none" 612 href="/msg-border/"><small>æ´å¤</small><i class="fa fa-angle-double-right"></i></a> 613 </div> 614 </div> 615 <div class="card-body pl-3"> 616 617 <p class="mb-1">Macv: æ¥è¯¢MySQLäºå¡å ç¨ 618...</p> 619 620 <p class="mb-1">qwe: 2024-12-02 621å·¥...</p> 622 623 <p class="mb-1">gx: å æ²¹</p> 624 625 <p class="mb-1">Macv: æ¯ç«å 人çå¾é¹¿ï¼ä¸ç¥ç»æ¥æ¢¦ä¸ºé±¼ã</p> 626 627 <p class="mb-1">qqq: def...</p> 628 629 </div> 630</div> 631<!-- åæ é¾æ¥ --> 632<div class="card mb-3 mt-2"> 633 <div class="card-header p-2 f-17"> 634 <strong><i class="fa fa-link"></i> åæ é¾æ¥</strong> 635 </div> 636 <div class="card-body px-0 py-3"> 637 <div class="tool-list"> 638 639 <div class="w-50 float-left text-center mb-2"> 640 <div class="mx-2"> 641 <a class="text-info-a" style="text-decoration: none" href="https://dusays.com/" 642 title="æèå¸è¯´ç¨åºçæ´»" target="_blank"> 643 æèå¸è¯´</a> 644 </div> 645 </div> 646 647 <div class="w-50 float-left text-center mb-2"> 648 <div class="mx-2"> 649 <a class="text-info-a" style="text-decoration: none" href="https://oneisall.top" 650 title="Djangoæå»ºçå客系ç»" target="_blank"> 651 æªé¨æ´ç©º</a> 652 </div> 653 </div> 654 655 <div class="w-50 float-left text-center mb-2"> 656 <div class="mx-2"> 657 <a class="text-info-a" style="text-decoration: none" href="https://bbs.2dogz.cn" 658 title="å主ååç弿ºè®ºå" target="_blank"> 659 äºçå¦é¢</a> 660 </div> 661 </div> 662 663 <div class="w-50 float-left text-center mb-2"> 664 <div class="mx-2"> 665 <a class="text-info-a" style="text-decoration: none" href="https://blog.loli.top" 666 title="æå ³äºæé¿ãçæ´»ä¸æ æã" target="_blank"> 667 ååæ§äº</a> 668 </div> 669 </div> 670 671 <div class="w-50 float-left text-center mb-2"> 672 <div class="mx-2"> 673 <a class="text-info-a" style="text-decoration: none" href="https://linsanhu.com/" 674 title="è®°å½å¦ä¹ ä¸çæ´»çç¹æ»´" target="_blank"> 675 æä¸éç¬</a> 676 </div> 677 </div> 678 679 <div class="w-50 float-left text-center mb-2"> 680 <div class="mx-2"> 681 <a class="text-info-a" style="text-decoration: none" href="https://www.foreverblog.cn/blog/2227.html" 682 title="forever blog." target="_blank"> 683 åå¹´ä¹çº¦</a> 684 </div> 685 </div> 686 687 <div class="w-50 float-left text-center mb-2"> 688 <div class="mx-2"> 689 <a class="text-info-a" style="text-decoration: none" href="http://106.13.18.133" 690 title="zhangxu sd" target="_blank"> 691 嬿æçº¦</a> 692 </div> 693 </div> 694 695 <div class="w-50 float-left text-center mb-2"> 696 <div class="mx-2"> 697 <a class="text-info-a" style="text-decoration: none" href="https://app.tmp.link/" 698 title="è¯å¿æä»¶ä¸è½¬ç½ç«" target="_blank"> 699 æä»¶ä¸è½¬</a> 700 </div> 701 </div> 702 703 <div class="w-50 float-left text-center mb-2"> 704 <div class="mx-2"> 705 <a class="text-info-a" style="text-decoration: none" href="https://command-not-found.com/" 706 title="æ¥æ¾æªç¥Linuxå½ä»¤æå¯¹åºçå " target="_blank"> 707 CommandNotFound</a> 708 </div> 709 </div> 710 711 <div class="w-50 float-left text-center mb-2"> 712 <div class="mx-2"> 713 <a class="text-info-a" style="text-decoration: none" href="http://jyywiki.cn/" 714 title="å京大å¦èèå¸è®¡ç®æºåºç¡è¯¾ç¨è®²ä¹ãè§é¢ç" target="_blank"> 715 NJU_JYY</a> 716 </div> 717 </div> 718 719 <div class="w-50 float-left text-center mb-2"> 720 <div class="mx-2"> 721 <a class="text-info-a" style="text-decoration: none" href=" https://mubwx.com" 722 title="æ¨æ¬æ å¿" target="_blank"> 723 æ¨æ¬æ å¿</a> 724 </div> 725 </div> 726 727 </div> 728 </div> 729</div> 730 731<div class="card mb-3 mt-2"> 732 <div class="card-header p-2 f-17"> 733 <strong><i class="fa fa-paper-plane"></i> äºè´ä¼æ </strong> 734 </div> 735 <div class="card-body p-2 f-15"> 736 <div class="row text-center"> 737 <div class="col"> 738 <a class="text-info-a" href="https://passport.ucloud.cn/?invitation_code=C1xC968B3780B59" 739 target="_blank" title="ucloudäºä¸»æº"> 740 <img style="max-width:40px" alt="ucloudäºä¸»æº" 741 src="/static//img/tg/ucloud-icon.png"> 742 <p class="mt-2">ucloudäº</p> 743 </a> 744 </div> 745 <div class="col"> 746 <a class="text-info-a" 747 href="https://www.ucloud.cn/site/active/kuaijie.html?invitation_code=C1xC968B3780B59" target="_blank" 748 title="ucloudäºä¸»æºä¿éæ´»å¨"> 749 <img style="max-width:40px" alt="ucloudäºä¸»æºä¿éæ´»å¨" 750 src="/static//img/tg/ucloud-icon.png"> 751 <p class="mt-2">äºä¸»æºä¿é</p> 752 </a> 753 </div> 754 <div class="col"> 755 <a class="text-info-a" 756 href="https://cloud.tencent.com/act/cps/redirect?redirect=33867&cps_key=fe0e7fca4790ebfb4c2f21565cdb3ce1&from=activity" 757 target="_blank" title="è ¾è®¯äºä¸»æºä¿éæ´»å¨"> 758 <img style="max-width:40px" alt="è ¾è®¯äºä¸»æºä¿éæ´»å¨" 759 src="/static//img/tg/ucloud-icon.png"> 760 <p class="mt-2">è ¾è®¯äºä¿é</p> 761 </a> 762 </div> 763 </div> 764 </div> 765</div>
766<script src="/static/js/jquery.cookies.js"></script>
vendor: 1 bytes, line 766
766
767<script> 768 let theme = $.cookie('blog_theme'); 769 // load slider infomation 770 $(function () { 771 $(document).ready(function () { 772 loadOne(); 773 loadGithub(); 774 }); 775 }) 776 777 // get one sentence and github repository information 778 function loadOne() { 779 var instance = $('#oneWord').scheletrone({ 780 url: "/load-one/", 781 }); 782 783 784 } 785 786 function loadGithub() { 787 let instance = $("#github-card").scheletrone({ 788 url: '/load-github/', 789 method: 'post', 790 ajaxData: {'theme': theme} 791 }) 792 /*$.ajax({ 793 type: 'post', 794 url: '/load-github/', 795 data: {'theme': theme}, 796 success: function (res) { 797 $(".f-hint").hide(); 798 $("#shield-svg").append('<div class="mr-1">' + res.star + '</div>'); 799 $("#shield-svg").append('<div class="mr-1">' + res.fork + '</div>'); 800 $("#shield-svg").append('<div class="mr-1">' + res.watcher + '</div>'); 801 $('#repoDesc').text(res.repo_desc); 802 $("#githubAvatar").attr('src', res.avatar); 803 $("#githubStar").attr('hidden', false); 804 } 805 })*/ 806 } 807 808 var myChart = echarts.init(document.getElementById('contribute')); 809 myChart.on('click', function (params) { 810 window.open('https://2dogz.cn/'); 811 }) 812 $.ajax({ 813 url: '/get-contribution/', 814 type: 'post', 815 success: function (response) { 816 generateCalendar(response); 817 } 818 }) 819 820 function generateCalendar(data) { 821 let item0Color = null; 822 let bgColor = null; 823 let borderColor = null; 824 // define heat map theme with user theme 825 if (theme === 'light' || theme === undefined) { 826 item0Color = '#EBEDF0'; 827 bgColor = '#ffffff'; 828 borderColor = '#ffffff'; 829 } else { 830 item0Color = '#444444'; 831 bgColor = '#303030'; 832 borderColor = '#303030'; 833 } 834 let option = { 835 title: { 836 top: 30, 837 left: 'center', 838 }, 839 tooltip: { 840 position: 'top', 841 backgroundColor: '#000000', 842 formatter: function (p) { 843 let format = echarts.format.formatTime('yyyy-MM-dd', p.data[0]); 844 return '<i class="fa fa-fire"></i> å¨' + format + 'æ' + p.data[1] + '次活å¨'; 845 } 846 }, 847 visualMap: { 848 textStyle: { 849 color: '#B9B8CE', 850 fontFamily: 'sans-serif', 851 fontSize: 12, 852 fontStyle: 'normal', 853 fontWeight: 'normal' 854 }, 855 show: false, 856 min: 0, 857 max: 10, 858 type: 'piecewise', 859 pieces: [ 860 { 861 gt: 10, 862 color: '#2E6139', 863 label: '>10' 864 }, 865 { 866 gt: 5, 867 lte: 10, 868 color: '#30A14E', 869 label: '5-10' 870 }, 871 { 872 gt: 2, 873 lte: 5, 874 color: '#40C463', 875 label: '2-5' 876 }, 877 { 878 gt: 0, 879 lte: 2, 880 color: '#9BE9A8', 881 label: '0-2' 882 }, 883 { 884 value: 0, 885 color: item0Color, 886 label: '0' 887 } 888 ] 889 }, 890 calendar: [{ 891 left: 80, 892 top: 20, 893 center: true, 894 range: [data.start, data.end], 895 splitLine: { 896 show: false, 897 }, 898 itemStyle: { 899 color: bgColor, 900 borderColor: borderColor, 901 borderWidth: 3, 902 borderType: 'solid', 903 }, 904 cellSize: [15, 15] 905 }], 906 series: { 907 type: 'heatmap', 908 coordinateSystem: 'calendar', 909 data: data.data, 910 itemStyle: { 911 color: '#aaeecc' 912 } 913 } 914 }; 915 myChart.setOption(option); 916 } 917 918</script>
918 919 </div> 920 </div> 921 </div> 922 </main> 923 924 925 <footer class="container-fluid mt-4 py-0 bg-footer"> 926 <div class="card-body text-center px-0 f-14"> 927 <p class="card-text mb-1">Copyright © <span id="year-info">2020</span> 928 <a href="https://github.com/weijiang1994" class="text-decoration-none footer-a" target="_blank" 929 title="å客ä½è çGithub">Blogin</a>. Design by Flask1.01. 930 </p> 931 <p class="mb-0"> 932 <a href="http://beian.miit.gov.cn/" class="text-decoration-none footer-a" target="_blank">æ¹ICPå¤2020018236å·-1</a> <span 933 id="web-day"> ç½ç«å·²ç»èª 900 天</span> 934 </p> 935 <p class="mb-0"><a href="/change-local/zh" class="text-decoration-none footer-a"><img 936 src="/static/img/chinese.svg" alt=""></a> | <a 937 class="text-decoration-none footer-a" href="/change-local/en"><img 938 src="/static/img/english.svg" alt=""></a></p> 939
939<script> 940 function getNewYear() { 941 let d = new Date(); 942 let old = new Date('2020/08/28'); 943 let x = document.getElementById("year-info"); 944 x.innerHTML = d.getFullYear(); 945 let y = document.getElementById("web-day"); 946 let dd = Math.floor((d.getTime() - old.getTime()) / (24 * 3600 * 1000)); 947 let d_str = "| ç½ç«å·²ä¸çº¿ " + dd + " 天"; 948 y.innerHTML = d_str; 949 } 950 951 getNewYear(); 952 </script>
952 953 </div> 954 </footer> 955 956</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.