我们在Jx.Cms开发笔记(三)-Views主题动态切换中说了如何切换主题.但是这里有一个问题,就是主题切换时,会报错 这是由于asp.net core在处理Views的信息的时候是在构造函数中处理的,没有任何方法可以刷新这个处理结果. 这里放最新版的DefaultViewCompiler代码,在Jx.Cms编写的时候代码有少许区别,但是基本逻辑是一样的. public DefaultViewCompiler( ApplicationPartManager applicationPartMana…
在Blazor 组件库 BootstrapBlazor 中Card组件介绍中我们说过,如果我们使用了Card组件的IsCollapsible属性设置了可伸缩的话,就只能使用Text属性来设置标题文本,不能自己定义了. 但是我们在widget组件设置的时候希望在CardHeader里放一个按钮或者一个下拉按钮,来完成一些事情,样子如下: 这里右边的添加到部分,在原始的Card中实现不了,所以我们需要改造一下. 这里我们可以在BootstrapBlazor的源码中发现,Card组件实际上是继承了Ca…
开始 从今天开始,我们将开启Jx.Cms系列开发教程. 我们将会使用Jx.Cms来介绍Blazor的开发.MVC的开发,热插拔插件的开发等等一系列开发教程. 介绍 Jx.Cms是一个使用最新版.NET(目前为.NET6)的Cms系统,前台使用MVC,后台使用Blazor. 亮点 前台使用MVC,SEO友好,在Controller之外同时支持Pages,可以无限扩展所需页面. 后台使用Blazor,借助BootstrapBlazor组件库,无需js,全程c#快速开发. 支持插件热插拔,无需重启应用…
界面 此界面完全抄了BootstrapAdmin css隔离 由于登录页面的css与其他页面没有什么关系,所以为了防止其他界面的css被污染,我们需要使用css隔离. css隔离需要在_Host.cshtml中添加一条css引用.此引用如果使用Blazor模板创建项目时会自带,如果自己添加新的Area,则需要自己加入. 格式为 <link href="{ASSEMBLY NAME}.styles.css" rel="stylesheet"> 如果是在RC…
标签页的样子 设计思路 与其他输入框一样,存在一个Label标签,由于这里不像其他输入框一样可以直接使用Row标签,所以这里需要额外增加. 使用Tag组件显示所有的标签,我们在Blazor 组件库 BootstrapBlazor 中Tag组件介绍中写过使用方法. 使用AutoComplete组件输入新的标签,我们同样在Blazor 组件库 BootstrapBlazor 中AutoComplete组件介绍中介绍过使用方法. 相关代码 razor: <label class="form-la…
Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.邮箱激活 users app下,models.py: class EmailVerifyRecord(models.Model): code = models.CharField(max_length=20, verbose_name=u"验证码") email = models.EmailField(max_length=50, verb…
这两天在做一个需要将wps文档转换成word文档的程序,在调用wps的com组件时项目编译是没有问题的,但当运行的时候却弹出了下面的错误提示: 从网上百度一番后,找到了正确的解决方法. 先从Com组件中添加引用: 选中引入的Com组件库,右键-> 属性: 将“嵌入互操作类型”改为 False 选项: 重新编译,程序正常运行. 由此,让我联想到了在前不久一个朋友在使用Office组件用来转换pdf文档时,出现的 “无法嵌入互操作类型...”的问题,记得当时他的处理方法是按照网上说的教程,设置程序获…
项目代码:https://github.com/pusidun/CMS-django 使用虚拟环境 虚拟环境是Python解释器的虚拟副本.在虚拟环境中安装私有包,不会影响全局的Python解释器.可以避免包的混乱和版本冲突. 还有一个好处是不需要管理员权限. 使用virtualenv virtualenv --version 可以检查系统是否有virtualenv.Ubuntu可以使用以下命令安装: sudo apt-get install python-virtualenv 假如你的项目在文…
1 创建数据库表 //配置文件CREATE TABLE IF NOT EXISTS `mc_config` ( `en_name` varchar(80) NOT NULL, `ch_name` varchar(60) DEFAULT NULL, `value` varchar(300) NOT NULL DEFAULT '', `type` varchar(100) NOT NULL DEFAULT '') ENGINE=MyISAM DEFAULT CHARSET=utf8; 插入数据 IN…
Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.登录功能完善 登录成功应该是重定向到首页,而不是转发,当前用户信息保存到session: class LoginView(View): def get(self, request): return render(request, "login.html", {}) def post(self, request): user_name = r…