{"id":49984,"date":"2023-02-26T13:46:24","date_gmt":"2023-01-09T02:44:33","guid":{"rendered":"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/"},"modified":"2024-04-29T16:22:50","modified_gmt":"2024-04-29T08:22:50","slug":"%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/","title":{"rendered":"\u7528Django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0"},"content":{"rendered":"<p>\u6211\u53c2\u8003\u4e86\u4e0b\u4e00\u9875\u3002<br \/>\n\u5c1d\u8bd5\u5728Django\u4e2d\u521b\u5efa\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u3002<br \/>\n\u4f7f\u7528Python\u811a\u672c\u5c06\u6570\u636e\u6ce8\u518c\u5230Django\u4e2d\u3002<\/p>\n<p>\u6211\u4f1a\u4e3a\u5df2\u7ecf\u53ef\u4ee5\u4f7f\u7528MariaDB\u7684\u9879\u76ee\u6dfb\u52a0\u529f\u80fd\u3002<\/p>\n<p>\u8bf7\u770b\u8fd9\u91cc\u4ee5\u4e86\u89e3\u5982\u4f55\u521b\u5efa\u9879\u76ee<br \/>\n\u4f7f\u7528Django\u7f16\u5199 Hello World\u3002<\/p>\n<p>\u5982\u4f55\u4ecesqlite3\u5207\u6362\u5230MariaDB\uff0c\u8bf7\u53c2\u8003\u4ee5\u4e0b\u65b9\u6cd5<br \/>\n\u5728Django\u4e2d\u4f7f\u7528MariaDB\u3002<\/p>\n<p>\u9879\u76ee\u540d\u79f0\u662fproj01<\/p>\n<p>\u5047\u8bbe\u5df2\u7ecf\u5728 MariaDB \u4e2d\u521b\u5efa\u4e86\u5177\u6709\u4ee5\u4e0b\u53c2\u6570\u7684\u6570\u636e\u5e93\uff1a<br \/>\n\u7528\u6237\u540d: django<br \/>\n\u5bc6\u7801: tiger123<br \/>\n\u6570\u636e\u5e93: django_apart<br \/>\n\u540c\u65f6\uff0c\u4e5f\u5df2\u7ecf\u5b8c\u6210\u4e86 proj01\/settings.py \u6587\u4ef6\u7684\u4fee\u6539\u3002<\/p>\n<blockquote><p>MariaDB\uff08\u65e0\uff09&gt; \u521b\u5efa\u6570\u636e\u5e93django_apart;<br \/>\nMariaDB\uff08\u65e0\uff09&gt; \u6388\u4e88django@localhost\u5bf9django_apart\u7684\u5168\u90e8\u6743\u9650;<\/p><\/blockquote>\n<p>1) \u5236\u4f5c\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n<pre class=\"post-pre\"><code>python manage.py startapp apartment\r\n<\/code><\/pre>\n<p>2) \u7f16\u8f91 proj01\/settings<\/p>\n<pre class=\"post-pre\"><code><span class=\"err\">\uff08<\/span><span class=\"n\">\u7701\u7565<\/span><span class=\"err\">\uff09<\/span>\r\n<span class=\"n\">INSTALLED_APPS<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span>\r\n    <span class=\"s\">'apartment'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"s\">'home'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"s\">'django.contrib.admin'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"s\">'django.contrib.auth'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"s\">'django.contrib.contenttypes'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"s\">'django.contrib.sessions'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"s\">'django.contrib.messages'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"s\">'django.contrib.staticfiles'<\/span><span class=\"p\">,<\/span>\r\n<span class=\"p\">]<\/span>\r\n<span class=\"err\">\uff08<\/span><span class=\"n\">\u7701\u7565<\/span><span class=\"err\">\uff09<\/span>\r\n<\/code><\/pre>\n<p>3) \u5bf9 apartment\/models.py \u8fdb\u884c\u7f16\u8f91\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"kn\">from<\/span> <span class=\"nn\">django.db<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">models<\/span>\r\n\r\n<span class=\"k\">class<\/span> <span class=\"nc\">Heya<\/span><span class=\"p\">(<\/span><span class=\"n\">models<\/span><span class=\"p\">.<\/span><span class=\"n\">Model<\/span><span class=\"p\">):<\/span>\r\n    <span class=\"n\">bango<\/span> <span class=\"o\">=<\/span> <span class=\"n\">models<\/span><span class=\"p\">.<\/span><span class=\"n\">CharField<\/span><span class=\"p\">(<\/span><span class=\"n\">max_length<\/span><span class=\"o\">=<\/span><span class=\"mi\">20<\/span><span class=\"p\">)<\/span>\r\n    <span class=\"n\">tanako<\/span> <span class=\"o\">=<\/span> <span class=\"n\">models<\/span><span class=\"p\">.<\/span><span class=\"n\">CharField<\/span><span class=\"p\">(<\/span><span class=\"n\">max_length<\/span><span class=\"o\">=<\/span><span class=\"mi\">50<\/span><span class=\"p\">)<\/span>\r\n    <span class=\"n\">hirosa<\/span> <span class=\"o\">=<\/span> <span class=\"n\">models<\/span><span class=\"p\">.<\/span><span class=\"n\">CharField<\/span><span class=\"p\">(<\/span><span class=\"n\">max_length<\/span><span class=\"o\">=<\/span><span class=\"mi\">20<\/span><span class=\"p\">)<\/span>\r\n    <span class=\"n\">yachin<\/span> <span class=\"o\">=<\/span> <span class=\"n\">models<\/span><span class=\"p\">.<\/span><span class=\"n\">IntegerField<\/span><span class=\"p\">()<\/span>\r\n    <span class=\"k\">def<\/span> <span class=\"nf\">__unicode__<\/span><span class=\"p\">(<\/span><span class=\"bp\">self<\/span><span class=\"p\">):<\/span>\r\n        <span class=\"k\">return<\/span> <span class=\"bp\">self<\/span><span class=\"p\">.<\/span><span class=\"n\">bango<\/span>\r\n<\/code><\/pre>\n<p>4) \u5c06\u6570\u636e\u53cd\u6620\u5230\u6570\u636e\u5e93\u4e2d\u3002<\/p>\n<pre class=\"post-pre\"><code>python manage.py makemigrations\r\npython manage.py migrate\r\n<\/code><\/pre>\n<p>5\uff09\u521b\u5efaCSV\u6587\u4ef6<\/p>\n<pre class=\"post-pre\"><code><span class=\"nb\">mkdir <\/span>static\r\n<span class=\"nb\">mkdir <\/span>static\/apartment\r\n<\/code><\/pre>\n<pre class=\"post-pre\"><code>\u82a5\u5ddd\u9f8d\u4e4b\u4ecb,101,2DK,35000\r\n\u6c5f\u6238\u5ddd \u4e71\u6b69,102,2DK,35000\r\n\u5ca1\u672c \u7dba\u5802,103,1DK,30000\r\n\u5c0f\u5ddd \u672a\u660e,201,2DK,36000\r\n\u68b6\u4e95 \u57fa\u6b21\u90ce,202,2DK,36000\r\n\u83ca\u6c60 \u5bdb,203,1DK,31000\r\n\u56fd\u6728\u7530 \u72ec\u6b69,301,2DK,40000\r\n\u4f50\u85e4\u6625\u592b,302,2DK,40000\r\n\u592a\u5bb0 \u6cbb,303,1DK,37000\r\n<\/code><\/pre>\n<p>6) \u521b\u4f5c\u811a\u672c<\/p>\n<pre class=\"post-pre\"><code><span class=\"nb\">mkdir <\/span>apartment\/management\r\n<span class=\"nb\">mkdir <\/span>apartment\/management\/commands\r\n<\/code><\/pre>\n<pre class=\"post-pre\"><code><span class=\"c1\"># ------------------------------------------------------------------\r\n#\r\n#   what_time_is_it.py\r\n#\r\n#                   Dec\/18\/2018\r\n# ------------------------------------------------------------------\r\n<\/span><span class=\"kn\">from<\/span> <span class=\"nn\">django.core.management.base<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">BaseCommand<\/span>\r\n<span class=\"kn\">from<\/span> <span class=\"nn\">django.utils<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">timezone<\/span>\r\n<span class=\"kn\">import<\/span> <span class=\"nn\">sys<\/span> \r\n\r\n<span class=\"k\">class<\/span> <span class=\"nc\">Command<\/span><span class=\"p\">(<\/span><span class=\"n\">BaseCommand<\/span><span class=\"p\">):<\/span>\r\n    <span class=\"n\">help<\/span> <span class=\"o\">=<\/span> <span class=\"s\">'Displays current time'<\/span>\r\n\r\n    <span class=\"k\">def<\/span> <span class=\"nf\">handle<\/span><span class=\"p\">(<\/span><span class=\"bp\">self<\/span><span class=\"p\">,<\/span> <span class=\"o\">*<\/span><span class=\"n\">args<\/span><span class=\"p\">,<\/span> <span class=\"o\">**<\/span><span class=\"n\">kwargs<\/span><span class=\"p\">):<\/span>\r\n        <span class=\"n\">sys<\/span><span class=\"p\">.<\/span><span class=\"n\">stderr<\/span><span class=\"p\">.<\/span><span class=\"n\">write<\/span><span class=\"p\">(<\/span><span class=\"s\">\"*** start ***<\/span><span class=\"se\">\\n<\/span><span class=\"s\">\"<\/span><span class=\"p\">)<\/span>\r\n        <span class=\"n\">time<\/span> <span class=\"o\">=<\/span> <span class=\"n\">timezone<\/span><span class=\"p\">.<\/span><span class=\"n\">localtime<\/span><span class=\"p\">(<\/span><span class=\"n\">timezone<\/span><span class=\"p\">.<\/span><span class=\"n\">now<\/span><span class=\"p\">()).<\/span><span class=\"n\">strftime<\/span><span class=\"p\">(<\/span><span class=\"s\">'%X'<\/span><span class=\"p\">)<\/span>\r\n        <span class=\"bp\">self<\/span><span class=\"p\">.<\/span><span class=\"n\">stdout<\/span><span class=\"p\">.<\/span><span class=\"n\">write<\/span><span class=\"p\">(<\/span><span class=\"s\">\"It's now %s\"<\/span> <span class=\"o\">%<\/span> <span class=\"n\">time<\/span><span class=\"p\">)<\/span>\r\n        <span class=\"n\">sys<\/span><span class=\"p\">.<\/span><span class=\"n\">stderr<\/span><span class=\"p\">.<\/span><span class=\"n\">write<\/span><span class=\"p\">(<\/span><span class=\"s\">\"*** end ***<\/span><span class=\"se\">\\n<\/span><span class=\"s\">\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"c1\">#\r\n# ------------------------------------------------------------------\r\n<\/span><\/code><\/pre>\n<pre class=\"post-pre\"><code><span class=\"c1\"># ------------------------------------------------------------------\r\n#\r\n#   list_rooms.py\r\n#\r\n#                   Dec\/18\/2018\r\n#\r\n# ------------------------------------------------------------------\r\n<\/span><span class=\"kn\">from<\/span> <span class=\"nn\">django.core.management.base<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">BaseCommand<\/span>\r\n<span class=\"kn\">from<\/span> <span class=\"nn\">apartment.models<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">Heya<\/span>\r\n<span class=\"kn\">import<\/span> <span class=\"nn\">sys<\/span>\r\n\r\n<span class=\"k\">class<\/span> <span class=\"nc\">Command<\/span><span class=\"p\">(<\/span><span class=\"n\">BaseCommand<\/span><span class=\"p\">):<\/span>\r\n    <span class=\"n\">help<\/span> <span class=\"o\">=<\/span> <span class=\"s\">'Displays current time'<\/span>\r\n\r\n    <span class=\"k\">def<\/span> <span class=\"nf\">handle<\/span><span class=\"p\">(<\/span><span class=\"bp\">self<\/span><span class=\"p\">,<\/span> <span class=\"o\">*<\/span><span class=\"n\">args<\/span><span class=\"p\">,<\/span> <span class=\"o\">**<\/span><span class=\"n\">kwargs<\/span><span class=\"p\">):<\/span>\r\n        <span class=\"n\">sys<\/span><span class=\"p\">.<\/span><span class=\"n\">stderr<\/span><span class=\"p\">.<\/span><span class=\"n\">write<\/span><span class=\"p\">(<\/span><span class=\"s\">\"*** start ***<\/span><span class=\"se\">\\n<\/span><span class=\"s\">\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"c1\">#\r\n<\/span>        <span class=\"k\">for<\/span> <span class=\"n\">h<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">Heya<\/span><span class=\"p\">.<\/span><span class=\"n\">objects<\/span><span class=\"p\">.<\/span><span class=\"nb\">all<\/span><span class=\"p\">():<\/span>\r\n            <span class=\"k\">print<\/span><span class=\"p\">(<\/span><span class=\"n\">h<\/span><span class=\"p\">.<\/span><span class=\"n\">tanako<\/span><span class=\"p\">,<\/span><span class=\"s\">\"<\/span><span class=\"se\">\\t<\/span><span class=\"s\">\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">end<\/span><span class=\"o\">=<\/span><span class=\"s\">\"\"<\/span><span class=\"p\">)<\/span>\r\n            <span class=\"k\">print<\/span><span class=\"p\">(<\/span><span class=\"n\">h<\/span><span class=\"p\">.<\/span><span class=\"n\">bango<\/span><span class=\"p\">,<\/span><span class=\"s\">\"<\/span><span class=\"se\">\\t<\/span><span class=\"s\">\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">end<\/span><span class=\"o\">=<\/span><span class=\"s\">\"\"<\/span><span class=\"p\">)<\/span>\r\n            <span class=\"k\">print<\/span><span class=\"p\">(<\/span><span class=\"n\">h<\/span><span class=\"p\">.<\/span><span class=\"n\">hirosa<\/span><span class=\"p\">,<\/span><span class=\"s\">\"<\/span><span class=\"se\">\\t<\/span><span class=\"s\">\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">end<\/span><span class=\"o\">=<\/span><span class=\"s\">\"\"<\/span><span class=\"p\">)<\/span>\r\n            <span class=\"k\">print<\/span><span class=\"p\">(<\/span><span class=\"n\">h<\/span><span class=\"p\">.<\/span><span class=\"n\">yachin<\/span><span class=\"p\">)<\/span>\r\n<span class=\"c1\">#\r\n<\/span>        <span class=\"n\">sys<\/span><span class=\"p\">.<\/span><span class=\"n\">stderr<\/span><span class=\"p\">.<\/span><span class=\"n\">write<\/span><span class=\"p\">(<\/span><span class=\"s\">\"*** end ***<\/span><span class=\"se\">\\n<\/span><span class=\"s\">\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"c1\"># ------------------------------------------------------------------\r\n<\/span><\/code><\/pre>\n<pre class=\"post-pre\"><code><span class=\"c1\"># ------------------------------------------------------------------\r\n#\r\n#   register_rooms.py\r\n#\r\n#                   Dec\/18\/2018\r\n#\r\n# ------------------------------------------------------------------\r\n<\/span><span class=\"kn\">from<\/span> <span class=\"nn\">django.core.management.base<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">BaseCommand<\/span>\r\n<span class=\"kn\">from<\/span> <span class=\"nn\">apartment.models<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">Heya<\/span>\r\n<span class=\"kn\">import<\/span> <span class=\"nn\">csv<\/span>\r\n<span class=\"kn\">import<\/span> <span class=\"nn\">sys<\/span>\r\n\r\n<span class=\"n\">file_csv<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"static\/apartment\/authors.csv\"<\/span>\r\n\r\n<span class=\"k\">class<\/span> <span class=\"nc\">Command<\/span><span class=\"p\">(<\/span><span class=\"n\">BaseCommand<\/span><span class=\"p\">):<\/span>\r\n    <span class=\"n\">help<\/span> <span class=\"o\">=<\/span> <span class=\"s\">'Displays current time'<\/span>\r\n\r\n    <span class=\"k\">def<\/span> <span class=\"nf\">handle<\/span><span class=\"p\">(<\/span><span class=\"bp\">self<\/span><span class=\"p\">,<\/span> <span class=\"o\">*<\/span><span class=\"n\">args<\/span><span class=\"p\">,<\/span> <span class=\"o\">**<\/span><span class=\"n\">kwargs<\/span><span class=\"p\">):<\/span>\r\n<span class=\"c1\">#\r\n<\/span>        <span class=\"n\">sys<\/span><span class=\"p\">.<\/span><span class=\"n\">stderr<\/span><span class=\"p\">.<\/span><span class=\"n\">write<\/span><span class=\"p\">(<\/span><span class=\"s\">\"*** start ***<\/span><span class=\"se\">\\n<\/span><span class=\"s\">\"<\/span><span class=\"p\">)<\/span>\r\n        <span class=\"n\">fp<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">open<\/span><span class=\"p\">(<\/span><span class=\"n\">file_csv<\/span><span class=\"p\">,<\/span> <span class=\"s\">'r'<\/span><span class=\"p\">)<\/span>\r\n        <span class=\"n\">reader<\/span> <span class=\"o\">=<\/span> <span class=\"n\">csv<\/span><span class=\"p\">.<\/span><span class=\"n\">reader<\/span><span class=\"p\">(<\/span><span class=\"n\">fp<\/span><span class=\"p\">)<\/span>\r\n        <span class=\"k\">for<\/span> <span class=\"n\">rr<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">reader<\/span><span class=\"p\">:<\/span>\r\n            <span class=\"k\">print<\/span><span class=\"p\">(<\/span><span class=\"n\">rr<\/span><span class=\"p\">)<\/span>\r\n            <span class=\"n\">hh<\/span> <span class=\"o\">=<\/span> <span class=\"n\">Heya<\/span><span class=\"p\">()<\/span>\r\n            <span class=\"n\">hh<\/span><span class=\"p\">.<\/span><span class=\"n\">tanako<\/span> <span class=\"o\">=<\/span> <span class=\"n\">rr<\/span><span class=\"p\">[<\/span><span class=\"mi\">0<\/span><span class=\"p\">]<\/span>\r\n            <span class=\"n\">hh<\/span><span class=\"p\">.<\/span><span class=\"n\">bango<\/span> <span class=\"o\">=<\/span> <span class=\"n\">rr<\/span><span class=\"p\">[<\/span><span class=\"mi\">1<\/span><span class=\"p\">]<\/span>\r\n            <span class=\"n\">hh<\/span><span class=\"p\">.<\/span><span class=\"n\">hirosa<\/span> <span class=\"o\">=<\/span> <span class=\"n\">rr<\/span><span class=\"p\">[<\/span><span class=\"mi\">2<\/span><span class=\"p\">]<\/span>\r\n            <span class=\"n\">hh<\/span><span class=\"p\">.<\/span><span class=\"n\">yachin<\/span> <span class=\"o\">=<\/span> <span class=\"n\">rr<\/span><span class=\"p\">[<\/span><span class=\"mi\">3<\/span><span class=\"p\">]<\/span>\r\n            <span class=\"n\">hh<\/span><span class=\"p\">.<\/span><span class=\"n\">save<\/span><span class=\"p\">()<\/span>\r\n<span class=\"c1\">#\r\n<\/span>        <span class=\"n\">sys<\/span><span class=\"p\">.<\/span><span class=\"n\">stderr<\/span><span class=\"p\">.<\/span><span class=\"n\">write<\/span><span class=\"p\">(<\/span><span class=\"s\">\"*** end ***<\/span><span class=\"se\">\\n<\/span><span class=\"s\">\"<\/span><span class=\"p\">)<\/span>\r\n        <span class=\"n\">fp<\/span><span class=\"p\">.<\/span><span class=\"n\">close<\/span><span class=\"p\">()<\/span>\r\n<span class=\"c1\"># ------------------------------------------------------------------\r\n<\/span><\/code><\/pre>\n<p>7) \u786e\u4fdd\u811a\u672c\u53ef\u7528\u3002<\/p>\n<pre class=\"post-pre\"><code>$ python manage.py help\r\n\r\nType 'manage.py help &lt;subcommand&gt;' for help on a specific subcommand.\r\n\r\nAvailable subcommands:\r\n\r\n[apartment]\r\n    list_rooms\r\n    register_rooms\r\n    what_time_is_it\r\n\uff08\u7701\u7565\uff09\r\n<\/code><\/pre>\n<p>8) \u6267\u884c\u811a\u672c<\/p>\n<p>\u6211\u4f1a\u8bd5\u7740\u5c55\u793a\u5f53\u524d\u7684\u65f6\u95f4\u3002<\/p>\n<pre class=\"post-pre\"><code>$ python manage.py what_time_is_it\r\n*** start ***\r\nIt's now 09:10:59\r\n*** end ***\r\n<\/code><\/pre>\n<p>\u786e\u8ba4\u6570\u636e\u7684\u72b6\u6001<\/p>\n<pre class=\"post-pre\"><code>$ python manage.py list_rooms\r\n*** start ***\r\n*** end ***\r\n<\/code><\/pre>\n<p>\u8f93\u5165\u6570\u636e<\/p>\n<pre class=\"post-pre\"><code>$ python manage.py register_rooms\r\n*** start ***\r\n['\u82a5\u5ddd\u9f8d\u4e4b\u4ecb', '101', '2DK', '35000']\r\n['\u6c5f\u6238\u5ddd \u4e71\u6b69', '102', '2DK', '35000']\r\n['\u5ca1\u672c \u7dba\u5802', '103', '1DK', '30000']\r\n['\u5c0f\u5ddd \u672a\u660e', '201', '2DK', '36000']\r\n['\u68b6\u4e95 \u57fa\u6b21\u90ce', '202', '2DK', '36000']\r\n['\u83ca\u6c60 \u5bdb', '203', '1DK', '31000']\r\n['\u56fd\u6728\u7530 \u72ec\u6b69', '301', '2DK', '40000']\r\n['\u4f50\u85e4\u6625\u592b', '302', '2DK', '40000']\r\n['\u592a\u5bb0 \u6cbb', '303', '1DK', '37000']\r\n*** end ***\r\n<\/code><\/pre>\n<p>\u786e\u8ba4\u6570\u636e\u7684\u72b6\u6001<\/p>\n<pre class=\"post-pre\"><code>$ python manage.py list_rooms\r\n*** start ***\r\n\u82a5\u5ddd\u9f8d\u4e4b\u4ecb     101     2DK     35000\r\n\u6c5f\u6238\u5ddd \u4e71\u6b69    102     2DK     35000\r\n\u5ca1\u672c \u7dba\u5802   103     1DK     30000\r\n\u5c0f\u5ddd \u672a\u660e   201     2DK     36000\r\n\u68b6\u4e95 \u57fa\u6b21\u90ce    202     2DK     36000\r\n\u83ca\u6c60 \u5bdb  203     1DK     31000\r\n\u56fd\u6728\u7530 \u72ec\u6b69    301     2DK     40000\r\n\u4f50\u85e4\u6625\u592b    302     2DK     40000\r\n\u592a\u5bb0 \u6cbb  303     1DK     37000\r\n*** end ***\r\n<\/code><\/pre>\n<p>9) \u8981\u67e5\u770b\u6570\u636e\uff0c\u8bf7\u9075\u5b88\u7ba1\u7406\u89c4\u5219\u3002<\/p>\n<p>\u521b\u5efa\u8d85\u7ea7\u7528\u6237<\/p>\n<pre class=\"post-pre\"><code>python manage.py createsuperuser\r\n<\/code><\/pre>\n<p>9-2) \u7f16\u8f91 apartment\/admin.py\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"kn\">from<\/span> <span class=\"nn\">django.contrib<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">admin<\/span>\r\n\r\n<span class=\"kn\">from<\/span> <span class=\"nn\">apartment.models<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">Heya<\/span>\r\n\r\n<span class=\"n\">admin<\/span><span class=\"p\">.<\/span><span class=\"n\">site<\/span><span class=\"p\">.<\/span><span class=\"n\">register<\/span><span class=\"p\">(<\/span><span class=\"n\">Heya<\/span><span class=\"p\">)<\/span>\r\n<\/code><\/pre>\n<p>\u542f\u52a8\u5f00\u53d1\u670d\u52a1\u5668\u3002<\/p>\n<pre class=\"post-pre\"><code>python manage.py runserver\r\n<\/code><\/pre>\n<p>9-4) \u8bbf\u95ee\u7ba1\u7406\u754c\u9762\u3002<\/p>\n<blockquote><p>http:\/\/127.0.0.1:8000\/admin \u53ea\u9700\u8981\u4e00\u79cd\u9009\u9879\uff0c\u539f\u6587\uff1a<\/p><\/blockquote>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8e87913a08637a6d5d59\/43-0.png\" alt=\"heyas01.png\" \/><\/div>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8e87913a08637a6d5d59\/44-0.png\" alt=\"heyas02.png\" \/><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u6211\u53c2\u8003\u4e86\u4e0b\u4e00\u9875\u3002 \u5c1d\u8bd5\u5728Django\u4e2d\u521b\u5efa\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u3002 \u4f7f\u7528Python\u811a\u672c\u5c06\u6570\u636e\u6ce8\u518c\u5230Django\u4e2d\u3002 \u6211 [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-49984","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u7528Django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0 - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/zh\/blog\/\u7528django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0\u3002\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u7528Django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0\" \/>\n<meta property=\"og:description\" content=\"\u6211\u53c2\u8003\u4e86\u4e0b\u4e00\u9875\u3002 \u5c1d\u8bd5\u5728Django\u4e2d\u521b\u5efa\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u3002 \u4f7f\u7528Python\u811a\u672c\u5c06\u6570\u636e\u6ce8\u518c\u5230Django\u4e2d\u3002 \u6211 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/zh\/blog\/\u7528django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0\u3002\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2023-01-09T02:44:33+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-29T08:22:50+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8e87913a08637a6d5d59\/43-0.png\" \/>\n<meta name=\"author\" content=\"\u65b0, \u97f5\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u65b0, \u97f5\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/\",\"name\":\"\u7528Django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0 - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\"},\"datePublished\":\"2023-01-09T02:44:33+00:00\",\"dateModified\":\"2024-04-29T08:22:50+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/4ba4019495123db3038fd0809e6959c9\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/zh\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u7528Django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/4ba4019495123db3038fd0809e6959c9\",\"name\":\"\u65b0, \u97f5\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/d484b6c6e4ae82e8a9efea989e1d2af46d9b6ef128101e63b18f559fca0ae627?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/d484b6c6e4ae82e8a9efea989e1d2af46d9b6ef128101e63b18f559fca0ae627?s=96&d=mm&r=g\",\"caption\":\"\u65b0, \u97f5\"},\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/author\/yunxin\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u7528Django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0 - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/zh\/blog\/\u7528django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0\u3002\/","og_locale":"zh_CN","og_type":"article","og_title":"\u7528Django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0","og_description":"\u6211\u53c2\u8003\u4e86\u4e0b\u4e00\u9875\u3002 \u5c1d\u8bd5\u5728Django\u4e2d\u521b\u5efa\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u3002 \u4f7f\u7528Python\u811a\u672c\u5c06\u6570\u636e\u6ce8\u518c\u5230Django\u4e2d\u3002 \u6211 [&hellip;]","og_url":"https:\/\/www.silicloud.com\/zh\/blog\/\u7528django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0\u3002\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2023-01-09T02:44:33+00:00","article_modified_time":"2024-04-29T08:22:50+00:00","og_image":[{"url":"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8e87913a08637a6d5d59\/43-0.png"}],"author":"\u65b0, \u97f5","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u65b0, \u97f5","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"3 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/","url":"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/","name":"\u7528Django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0 - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website"},"datePublished":"2023-01-09T02:44:33+00:00","dateModified":"2024-04-29T08:22:50+00:00","author":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/4ba4019495123db3038fd0809e6959c9"},"breadcrumb":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/zh\/blog\/"},{"@type":"ListItem","position":2,"name":"\u7528Django\u5c06csv\u6570\u636e\u8fdb\u884c\u767b\u8bb0"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website","url":"https:\/\/www.silicloud.com\/zh\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/4ba4019495123db3038fd0809e6959c9","name":"\u65b0, \u97f5","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/d484b6c6e4ae82e8a9efea989e1d2af46d9b6ef128101e63b18f559fca0ae627?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d484b6c6e4ae82e8a9efea989e1d2af46d9b6ef128101e63b18f559fca0ae627?s=96&d=mm&r=g","caption":"\u65b0, \u97f5"},"url":"https:\/\/www.silicloud.com\/zh\/blog\/author\/yunxin\/"},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e7%94%a8django%e5%b0%86csv%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e7%99%bb%e8%ae%b0%e3%80%82\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/49984","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/comments?post=49984"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/49984\/revisions"}],"predecessor-version":[{"id":86350,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/49984\/revisions\/86350"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/media?parent=49984"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/categories?post=49984"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/tags?post=49984"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}