大象笔记

知者行之始,行者知之成

rust web 框架 Loco 新建一个 HTML 页面

虽然 Loco 主推的是前后端分离的方式写页面,但是我还是喜欢后端渲染的 HTML 页面。 因为我的使用场景,大部分不适用前后端分离: 后端渲染的页面更 SEO 友好 页面需要多语言支持,而前端实现并不合适。例如如果支持 10 门语言,总不能一次加载所有语言吧。 前端技术更新过快,而且毫无意义。不想耗费过多的时间去跟进。 言归正传。 实际上 loco 官方文档中介绍 HTML template view 还是相对简单,要了解 view 的全面可以参考 loco 的一个 demo: https://github.com/loco-rs/loco/blob/master/examples/de ...

阅读全文...

rust web 框架 loco 命令大全

loco 框架的命令非常强大,完全可以媲美 laravel。 常用命令 新建项目: loco new 启动服务:cargo loco start 查看所有路由:cargo loco routes 主要命令 > cargo loco Finished dev [unoptimized + debuginfo] target(s) in 16.27s Running `target/debug/loco_tool-cli` The one-person framework for Rust Usage: loco_tool-cli [OPTIONS] <COMMAND> ...

阅读全文...

rust web 框架 loco 的后端 HTML 模板

loco 框架目前的文档还是有点简陋,想通过直接看文档来上手,不太现实。 还是需要自己结合代码去查看三方的依赖库的文档。 目录结构 注意,后台模板及相关的资源文件是在 assets 目录下。 而不是 frontend 目录下,frontend 是 vite 创建的纯前端部分 (前后端分离的方案, loco 的默认首页就是在 frontend 中)。 Loco SaaS 项目,初始化的 assets 目录结构: > tree assets/ assets/ ├── i18n │   ├── de-DE │   │   └── main.ftl │   ├── en-US │   │   ...

阅读全文...

NeoVim ALE 插件安装并配置 Rust Analyzer

在 NeoVim 中浏览 Rust Loco 项目代码时,想查看默认的 route 配置有哪些。 例如,src/app.rs 中,定义了: fn routes(_ctx: &AppContext) -> AppRoutes { AppRoutes::with_default_routes() .add_route(controllers::notes::routes()) .add_route(controllers::auth::routes()) .add_route(controllers::user::routes( ...

阅读全文...

历时一年微信个人公众号粉丝终于突破 1000

去年四月初开始重启这个注册了很久,但是一直没有怎么发过文章的微信个人公众号“大象工具”。主要是感觉内容类网站越来越没有流量,百度搜索几乎以一己之力摧毁了整个中文互联网,劣币驱逐良币,我自己也越来越习惯在微信搜索里找资料,于是就定期把个人博客里的文章同步到这个微信公众号里。 没想到一年后的今天,关注量突破了 1000,还是有点意外。而且连续几天的浏览量都超过了我网站的阅读量。 微信巨量的推荐引流,便捷的转发功能,及评论功能,确实构建了一个新的内容生态,我恍惚觉得这更像一个更加开放的论坛系统。毕竟网站生态的评论功能基本被敏感词摧毁了,而这里却可以相对自由的表达。 流量来源 下面这个统计图可以看到 ...

阅读全文...

rust web 框架 loco 安装

之前尝试了 rust 的 Axum 框架,并写了两个练手的小工具。但是感觉上还是太简陋了,跟 golang 的 gin 类似, 没有自带的 ORM 以及模板系统,对初学者非常不友好。 我需要的是一个类似 Laravel 这样的完善的框架,有自己的代码结构规范,以及各种内置功能。 恰好看到了 loco 这个框架,号称对标 Ruby on Rails 这个经典框架。 Loco is a Rails inspired web framework for Rust. 而且是基于 Axum 的封装。于是忍不住想尝试一下,顺便把之前写的小工具重构成基于 Loco 的。 安装 loco cargo in ...

阅读全文...

回家办公,显示器屏幕越多开发效率就越高么

最近晚上回家发现越来越不想打开电脑,即便开了电脑,面对两个显示器, 经常一行代码也没写,就刷起了 B 站上的红警视频 (一个看视频,另一个闲置状态)。。。然后到点关机睡觉。。。 也许是最近连续两周早起晨跑,到了晚上就犯困吧。 昨晚发的关于烟台网站开发的文章,也是在手机上码完字,直接发布的。也没有用到电脑。 反倒是,拿出落灰已久的笔记本,倚靠在沙发上,还能干点正经事。 为何在小小的笔记本屏幕上,和更小的手机屏幕上,我能静下心来写点东西。 反而到了大显示器,多显示器下,就开始分心,不知所措。总想边看视频,边工作。 实际上只完成了看视频的任务。。。 我觉得大概是之前养成的"习惯" ...

阅读全文...

烟台某些网站开发公司真是太糊弄了

公司一个网站找了一个烟台本地网站开发公司(某明网络),开发完成后,跟设计完全不符,而且这个刚毕业的开发人员连样式都搞不定。没办法,最后让我去擦屁股。非常无奈,钱让外面公司赚走了,活都我干了。。。 白白浪费两个周时间,一肚子火。 糊弄点 页面底部用了一个假的icp 备案号。域名不做工信部的 icp 备案。直接用的香港服务器。我是在阿里云上部署新网站时,发现域名访问被拦截了,才意识到这个问题。虽然海外服务器可以省去 icp 备案,但是公安备案是省不了的,而公安备案也没做。 不配置 https。一行命令搞定的事情,就是不弄。 不能发布文章。。。真的是纯静态页模板。第一次见这么糊弄的。 合同里有中英 ...

阅读全文...

第一次给个人网站提交公安联网备案

昨天接到烟台开发区当地派出所的电话,说我的个人网站需要 3 天内提交公安联网备案。我同事也收到了公司网站的公安联网备案要求。看来这次是集中催办了。 好在,同事今天下午操作了一遍备案流程,帮忙踩了不少坑,我晚上仅仅耗时半个小时就完成了备案提交。 具体参考,阿里云官方文档 “公安联网备案及注销”: https://help.aliyun.com/zh/icp-filing/basic-icp-service/user-guide/the-public-security-network-for-record-and-cancellation#concept-dw1-2sl-zdb 登录全国互联网安全 ...

阅读全文...

失眠头疼,晨跑

这段时间,估计是压力太大,晚上睡不着,或者凌晨醒了就无法入睡,要么天天做噩梦。还伴有严重的头疼。上一次有这种状况还是十多年前了。 早上翻来覆去也无法再次入睡,加上头疼欲裂,心想:算了,出去跑一圈吧,还能缓解压力。 好多年不跑步,担心心脏适应不了,于是慢跑一小段就走一会。为了控制运动量,临时下载了 keep app,初始化配置真繁琐哇 😓 今天状态还可以,沿着柳林河跑了一圈,正好两公里。严格来说是快走了两公里。。。 也许是运动量太小,没有感觉到身体不适的状况。 但是,沿着河边跑总要选择岔路口,容易分神,准备明天由柳林河,穿过小树林,沿海边跑了。 烟台这个城市比较好的一点是,人口密度小,跑步的人 ...

阅读全文...

Android Kotlin 调用 ZXing 扫描二维码

要在 Android 平板上实现一个输入激活码激活的功能,但是激活码太长,40 个字符,太长不好输入。所以想通过生成二维码,然后扫描二维码,提取激活码的方案。 我看目前 Google 官方推荐使用 ML kit 来识别二维码,但是由于使用的是华为平板,担心依赖于 Google 服务的功能无法运行,所以使用了 ZXing 这个库。 下面是一个教程: https://tutorialwing.com/implement-android-qr-code-scanner-using-zxing-library-in-kotlin/ 参考这里面的 fragment 部分。 摄像头权限 <uses- ...

阅读全文...

Windows 11 上通过国内源安装 Rust

下载 首先,从 Rust 官方网站下载 rustup-init.exe 64 位安装包。 https://www.rust-lang.org/tools/install 网络连接错误 但是直接点击 rustup-init.exe 进行安装,会报错。大意是网络无法连接。 这个跟之前在 Linux 上安装 rust 是一样的问题,被网址被国内和谐了。 info: profile set to 'default' info: default host triple is x86_64-pc-windows-msvc info: syncing channel updates for 'stable- ...

阅读全文...