You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django新增应用后添加静态图片及导入CSV遇问题求助

静态图片加载问题排查与解决
  • 基础配置检查
    确认项目settings.py中已启用静态文件服务:
    • INSTALLED_APPS包含django.contrib.staticfiles
    • STATIC_URL = '/static/'(默认配置即可)
      在newendpoint应用下创建static/newendpoint目录,将图片放入该目录(例如test.jpg)。
  • 模板引用规范
    在模板文件开头添加{% load static %}标签,引用图片时使用:
    <img src="{% static 'newendpoint/test.jpg' %}" alt="测试图片">
    
    检查模板语法是否有误(标签未闭合、路径拼写错误等),这类问题常导致服务器崩溃。
  • 开发环境验证
    运行python manage.py runserver后,直接访问静态文件URL(例如http://localhost:8000/static/newendpoint/test.jpg),若能打开则说明配置正常,问题出在模板引用;若无法访问,检查文件权限或路径是否正确。
CSV导入SQLite数据库的解决方法

方法1:通过Django Shell批量导入

  1. 在newendpoint/models.py中定义与CSV字段匹配的模型:
    class DataSet(models.Model):
        column1 = models.CharField(max_length=100)
        column2 = models.IntegerField()
        # 按CSV列定义对应字段
    
  2. 执行迁移创建数据表:
    python manage.py makemigrations
    python manage.py migrate
    
  3. 启动Django Shell并导入数据:
    python manage.py shell
    
    在Shell中执行:
    import csv
    from newendpoint.models import DataSet
    
    # 替换为你的CSV文件路径,可使用绝对路径或项目根目录下的相对路径
    with open('dataset.csv', 'r', encoding='utf-8') as f:
        reader = csv.DictReader(f)
        for row in reader:
            DataSet.objects.create(
                column1=row['CSV列名1'],
                column2=int(row['CSV列名2'])
                # 一一对应模型字段与CSV列
            )
    

方法2:通过SQLite命令行导入

  1. 进入项目根目录,启动SQLite命令行:
    sqlite3 db.sqlite3
    
  2. 查看目标表结构(确保CSV列顺序与表字段一致,跳过自增id列):
    .schema newendpoint_dataset
    
  3. 执行导入命令:
    .mode csv
    -- 若CSV包含表头,添加以下语句跳过第一行
    .import --skip 1 dataset.csv newendpoint_dataset
    

常见错误排查

  • 编码问题:确保CSV文件使用UTF-8编码,避免导入时出现乱码或读取失败。
  • 字段类型不匹配:CSV中的数值需与模型字段类型对应(例如字符串转整数),否则会抛出数据类型错误。
  • 文件路径错误:使用相对路径时,确保文件位于执行命令的目录下(通常是项目根目录),或直接使用绝对路径。

内容的提问来源于stack exchange,提问作者AwkwardHeater

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 16:01:17