关于: "blog building":

面包屑

books里面的面包屑工作正常

考虑在tutorials里面也添加一个,自己也记不清怎么添加的。改动的时候发现了若干个问题

1. pycharm打不开db.sqlite, 怎么搞都打不开。不清楚原因。单独找了个管理器看了一下,文件是好的,对于这个project来说,就是打不开。maybe 那天重新clone一下了。不习惯的地方容易打断思路。

2.添加一个面包屑居然还有一点技术含量。因为logic跟books是一样的。最后从里到外都动了一下,从model里面添加mptt,view里面改类方法。

      问题是class里面有一个小bug,暂时没搞清楚。logic清晰,不work,work版的code影响效率。shit!

明天再弄了!



n5321 | 2025年5月19日 22:17

Index Page

AutoEM做了简单的refactoring

考虑做一个homepage。站长之家里面挑了一个漂亮的template,然后做改装。简单代码的地方容易改,可是在内容的地方,要保持完整与重点突出还是有挑战性。

AutoEM online版需要用的功能也都可以代码出来,不确定性更多的是match user demand!思路上应该做一个调整。

  1. 一个产品没有完成就只是零件,零件本身是没有价值的,做太多的零件本质上相当于没有产出。现在有的几个东西都需要进一步完善。完善需要时间!
  2. site的内容做成什么样子需要interact,必须要有user的,应该要fail quick,还是需要去获得反馈。
  3. as an organic being, 必定需要的是evolve,evolve 是过程的核心!dance with dragon就不应该是solo了。
  4. debug,当前的几个部分。把AutoEM and video的部分publish and 找业务!


待update内容

1:所有的filter后面的翻页内容都不属于filter里面的
2:移动版的headline 动态显示的方式有问题。动态显示的内容形成了duplicate code





n5321 | 2025年5月11日 08:20

前端问题0405

  • 典型的“可收起的侧边栏 + 面板式调试界面”,可以拿来做:

    • 后台小工具面板

    • 实时系统监控界面

    • 开发者模式切换栏

    • 电机仿真参数面板

    1. 前端结构搭建(HTML + CSS)

    1. 添加交互逻辑(JavaScript 控制展开/折叠、面板切换)

    1. 样式优化(响应式、Hover 效果)

    1. 可选:用 Django 模板插入动态数据

    效果说明:

    • 🔽 点击右侧 “DJ” 小句柄 打开侧边栏;

    • ✖️ 点击右上角 “✕” 关闭侧边栏;

    • 📑 点击上方 tab 切换不同的调试内容面板;

    • 🧩 面板内容是静态模拟数据,你可替换成 Django 模板变量。

      总体来说是这个效果


n5321 | 2025年4月5日 22:51

djanog-ecommerce project learning

https://github.com/justdjango/django-simple-ecommerce
souce code 以上!


n5321 | 2025年4月3日 21:51

总结250329

Blog

  1. sidebar的Category要改成for出来的。

  2. adminx页面可以添一个pagination!加一个翻页功能出来。

Tutorial

list页面的前端要改掉,图片的处理方式太丑了!

Books

Books的前端页面要好一些,不过还是缺乏层次感,不够

总体在category,information architecture上面做得都不够好!

Video

  1. 主要是影响项目进度!

  2. 需要处理的细节好像又有一点多!

以上的内容其实都是作为meta data 存在,都只是打窝的窝料。AutoEM本质的product还没有添加进去!神烦!

AutoEM

这个部分的东西是不是需要挂出去!早一点。做一个小一点的mvp出来。tutorial的部分丰富起来!books先挂上去,把流量和用户拉满。maybe 做一个甘特图的project!

可以完善update的东西太多了!

框架! 总体来看是有四个层面的东西,框架,内容,渠道,交易,要找人找钱找单出来!

这个周末可以做一个总结性质的阶段性总结!实现整体代码的可维护性!

考虑更新tutorial list页面

问题:前端的东西如何做得更容易维护?!

这个星期主要解决前端问题!

在整体页面的设计上,以内容为核心的跟homePage确实有很大的区别,后面page是否太过模式化了?!

footer的部分是否有保留的必要?! enterprise homepage的定位和价值不一样!to make a contact!

所以它是以link, introduction为核心的!

如果以内容为核心,它的内容就已经是endpoint了!关键点在endpoint的地方!我还是需要做一个footer!

做了多次尝试,期望自动用bs的default实现,太丑了!还是要自己来想办法!

个人基本信息的部分:

期望在底部,但是页面小的时候可以隐藏起来!如果要在页面显示上做的更漂亮是会很耗时间的!

用的是sidebar的结构来实现的!

blog的页面如果不动!

就需要把tutorial and books的页面改过来!CSS的东西太耗时间了,后面再说!!!需要对css的理解、信息结构的理解上几个层次可能会好一点!



n5321 | 2025年3月29日 09:09

site update 0329

software的意思是它是变化的。

一个web app可控的地方,可以改的地方太多了。css改起来太烦!

根本就记不起自己三个星期以前写的东西,艹!!!!


n5321 | 2025年3月29日 08:45

Blog update_改用django_filter

venv/Scripts/activate
cd myprojectdir
python manage.py runserver 8001
考虑改用django_filter来在页面中实现筛选过滤功能,暂时报错较多,未成功,但是应该是方向性的!

class PostAdminList(TagContextMixin, FilterView):
    model = Post
    template_name = 'blog/index_admin.html'
    context_object_name = 'posts'
    filterset_class = PostFilter  # 直接使用 django-filter
    paginate_by = 50
    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        # 传递筛选选项
        context['status_choices'] = Post._meta.get_field('status').choices
        context['categories'] = Category.objects.all()
        context['tags'] = Tag.objects.all()
        context['current_tag'] = self.request.GET.get('tag')
        # 获取已筛选的文章列表,用于提取时间筛选项
        posts = self.get_queryset()
        context['years'] = [year.year for year in posts.dates('created_on', 'year', order='DESC')]
        context['months'] = posts.dates('created_on', 'month', order='DESC')
        return context


n5321 | 2025年3月27日 15:57

新插件 django-reversion.

  1. Install with pip: pip install django-reversion.

  2. Add 'reversion' to INSTALLED_APPS.

  3. Run manage.py migrate.

    新增加了两个表


    确实用起来不错,track的功能很厉害!


    在maintain tutorial site!好像成熟度很低!原来应该是被html&CSS&JavsScript搞烦,暂时停下来了!要update的东西太多了!


    在admin之中的reversion有效果。

    在personal page之中,暂时怎么用还没有完全搞清楚!


    AJAX的实现方式有了一点概念。但是实际的东西还没完全搞清楚。




n5321 | 2025年2月20日 10:11

django Add on

tutorial_test增加django_debug插件

pip install django-debug-toolbar -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

其他的部分直接按官网的操作install搞定

增加easy-thumbnails

pip install easy-thumbnails -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

大概搞清楚了这个工具的价值:

  1. 对于media中的图片做处理,可以是裁剪、改分辨率,格式等等。

  2. maybe 在cache中也能做一点处理,提高performance!

尝试另外一个插件:django-filer

简单地试了一下,确实很好用的样子!一个在django admin下面的文档管理器

 pip install django-polymorphic  django-mptt  django-filer  -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

目前是django-cms给钱的一个开源工具!

使用起来还是很有价值,也比较的简单! 中间出现的一个bug是chatgpt给错了解释!

依赖包有三个:easy-thumbnails、django-polymorphic、django-mptt

settings里面要改的若干项目:

INSTALLED_APPS

'easy_thumbnails',
'filer',
'mptt',

其他的部位


INTERNAL_IPS = [
  # ...
  "127.0.0.1",
  # ...
]

THUMBNAIL_STORAGE = 'easy_thumbnails.filesystems.FileSystemStorage'

THUMBNAIL_HIGH_RESOLUTION = True

THUMBNAIL_ALIASES = {
  '': {
      'small': {'size': (200, 200), 'crop': True},   # 200x200 裁剪缩略图
      'medium': {'size': (400, 400), 'crop': True}, # 400x400
      'large': {'size': (800, 800), 'crop': False}, # 800x800,不裁剪
  },
}

THUMBNAIL_PROCESSORS = (
  'easy_thumbnails.processors.colorspace',
  'easy_thumbnails.processors.autocrop',
  'filer.thumbnail_processors.scale_and_crop_with_subject_location',
  'easy_thumbnails.processors.filters',
)

in models.py

file = FilerFileField(
  related_name='documents',
  on_delete=models.CASCADE,
  blank=True,
  null=True,
  verbose_name="文件"
)

in admin.py

admin.site.register(Document, DocumentAdmin)
admin.site.unregister(File)
admin.site.register(File, FileAdmin)

重点:作为一个独立的工具,它自己带了若干个tables。也就是说它本质上是可以无model运行的。

它自己这样子带了7个表,7个表对于文件的管理就已经做了很多的控制!

filer_clipboard filer_clipboarditem filer_file filer_folder filer_folderpermission filer_image filer_thumbnailoption

实际的使用则是自己的model去foreignkey这九个tables。所以逻辑上改动的地方其实不多。

开始的Bug是在settings.py之中做了错误的配置:

FILER_FILE_MODELS = { 'file': 'filer.File', # 默认的文件模型 }

help里面几乎没有这个参数的设置。最后想着把这个code 删掉,就一切正常了。用起来算是一个有我需要的功能的工具!说是sha1都嵌入在里面了!所以可以处理duplicate,但是同样的文档可以上传两次!maybe 要在什么地方设置unique=true才行!

问题是这个工具的用户数量可能不是特别多,虽然github里面有1.8k star,从数量上看是很不少,但是在google中可以搜索到的配置应用的article不多!

另外就是它的help做得太潦草了。从help里面难get到足够多准确的idea!

但是确实是用起来很舒服的一个工具。可以算是今天的收货了!

问题是给user 做update效果不好,或者是暂时没搞清楚它的source code!

其他若干个需要尝试的add on

2. django-allauth

  • 推荐理由: 用于用户注册、登录和身份验证。它支持社交媒体登录(如 Facebook、Google 等)和常规电子邮件登录。

  • 功能: 社交认证、用户注册、邮件验证、密码恢复等。

  • 链接: django-allauth

3. django-filer

  • 推荐理由: 一个用于文件和图片管理的 Django 插件。它可以帮助你管理书籍封面和其他上传的资源。

  • 功能: 支持文件、图片、文件夹的管理,集成到 Django Admin 界面。

  • 链接: django-filer

4. django-ckeditor

  • 推荐理由: 提供一个富文本编辑器,可以用于书籍描述、评论等文本内容的编辑。

  • 功能: 支持格式化文本、插入链接、图片、视频等。

  • 链接: django-ckeditor

5. django-comments

  • 推荐理由: 如果你的 bookshare 网站有用户评论功能,django-comments 插件可以帮助你轻松管理评论系统。

  • 功能: 支持评论的管理、审核、用户通知等。

  • 链接: django-comments

6. django-crispy-forms

  • 推荐理由: 使 Django 表单的 HTML 渲染更加简洁、优雅和响应式,减少了大量的模板工作。

  • 功能: 提供更简洁和美观的表单布局。

  • 链接: django-crispy-forms

7. django-tagging

  • 推荐理由: 用于标签系统,用户可以为书籍添加标签,方便分类和搜索。

  • 功能: 提供标签添加、搜索、分类等功能。

  • 链接: django-tagging

8. django-activities

  • 推荐理由: 提供用户行为跟踪、通知功能,可以在书籍分享时进行相关的活动记录。

  • 功能: 用户分享、点赞、评论等活动记录,可以用于构建动态和通知系统。

  • 链接: django-activities

9. django-simple-history

  • 推荐理由: 用于跟踪模型实例的历史变化。如果用户编辑了某本书的描述或其他内容,可以记录历史版本。

  • 功能: 自动记录模型的历史版本,支持查看变更历史。

  • 链接: django-simple-history

10. django-celery

  • 推荐理由: 用于异步任务处理。例如,在后台处理书籍上传、生成书籍封面缩略图等耗时操作时,可以使用 Celery。

  • 功能: 支持异步任务队列处理。

  • 链接: django-celery

11. django-searchable-select

  • 推荐理由: 提供一个可以搜索的下拉选择框,适用于书籍分类、作者等字段,用户可以快速找到相关内容。

  • 功能: 增强选择框的搜索能力,提升用户体验。

  • 链接: django-searchable-select

12. django-storages

  • 推荐理由: 用于处理文件存储,支持使用外部存储服务如 Amazon S3、Google Cloud Storage 或其他云服务。

  • 功能: 支持多种外部存储提供商,方便管理大规模文件。

  • 链接: django-storages

13. django-reversion

  • 推荐理由: 提供数据库版本控制功能,用于恢复编辑过的书籍内容或其他模型实例。

  • 功能: 对模型进行版本控制,可以查看和恢复到历史版本。

  • 链接: django-reversion

14. django-filter

  • 推荐理由: 用于创建过滤器,使得用户可以根据书籍的不同特征(如作者、类别、出版日期等)进行快速过滤。

  • 功能: 支持按条件过滤数据,特别适用于复杂查询。

  • 链接: django-filter

15. django-notifications-hq

  • 推荐理由: 提供通知系统,可以用来发送书籍分享、评论等通知给用户。

  • 功能: 支持多种通知方式(如邮件、推送等)。

  • 链接: django-notifications-hq

16. django-user-accounts

  • 推荐理由: 提供一个完整的用户账户管理系统,可以包括用户的注册、登录、密码恢复等功能。

  • 功能: 用于构建完整的用户管理系统。

  • 链接: django-user-accounts




n5321 | 2025年2月15日 22:28

browser问题

一个逻辑看上去很简单的task!

我希望在文档上传的时候,对文档做一点处理:

  1. 把pdf 或者 epub文档的第一页提取出来,作为图片显示在thumbnail的位置。

  2. 然后把图片作为png文档跟着存到后台的media thumbnail文档中。

步骤1实现起来很简单。步骤2要实现起来居然还蛮复杂!

chatgpt说要把缓存中的图片转成bolb,然后在fetch成图片,最后存到media文件夹之中。本质上自己对browser的理解不够!不是很容易查清问题到底在哪里。

算了。暂时放弃掉算了!debug起来自己的思路清晰不起来!

把自己的Blog更新出去!


这个问题,应该要用第三方插件来解决! 因为它还是有一点点的复杂性!对图片的处理,另存为文件名等等。



n5321 | 2025年2月8日 23:53

About Us

普通电机工程师!
从前只想做最好的电机设计,现在修理电机设计工具。
希望可以帮你解释电磁概念,项目救火,定制ANSYS Maxwell。

了解更多