很多人工资也回到了八九年前的水平了。
content missing
官方自带逻辑。
开会时间占了一半?
感谢回复,让我学了新知识。
求教:sse 啥意思?
楼主应该是 85 年之前的老程序员?
首先很认同你的理念,不用专门去写文档。 同时质疑一下,你这个对 i18n 的支持大概率是你一开始架构没考虑完善的。
Turbo + Stimulus 其实最大的痛点就是缺乏现成好用的组件库。我的选择是基于纯 CSS 库(bulma 和 weui)扩展和慢慢积累,感觉也就那么回事:https://github.com/work-design/rails_design/tree/main/app/javascripts,目前已经进入了一切尽在掌握中的阶段和感觉中。
从实际开发体验来看,每个组件用的 js 代码都蛮少的,大都几十上百行就解决问题了。以前的 UI 组件库,如 bootstrap 动不动一个 js 文件就上千行,让我很难理解。基于 Vue/react 的组件库就更复杂了吧
基于纯 CSS 库开发,最大的优点就是很容易 override . 我想这里的 vue/react 大佬们,如果基于 vue/react 组件库,UI 层面的 override 好搞么?
FROM ruby:3.0.3-alpine as build
RUN apk add --update --no-cache build-base git fish nodejs yarn postgresql-dev libxml2-dev libxslt-dev tzdata
ENV APP_HOME /app
RUN mkdir $APP_HOME
WORKDIR $APP_HOME
# 安装 Ruby 依赖
COPY Gemfile* $APP_HOME/
COPY vendor/gems $APP_HOME/vendor/gems/
RUN bundle config set --local path 'vendor/bundle'
RUN bundle install
# 安装 Node.js 依赖
COPY package.json yarn.lock .npmrc $APP_HOME/
RUN yarn install --check-files
# 编译 assets 并于完成后清理依赖
COPY . $APP_HOME
RUN bin/vite build # 预先编译前端
RUN rm -rf $APP_HOME/node_modules
FROM ruby:3.0.3-alpine
RUN apk add --update --no-cache postgresql-dev libxml2-dev libxslt-dev tzdata libgit2 cmake fish
COPY --from=build /app /app
WORKDIR /app
RUN bundle config set --local path 'vendor/bundle'
RUN chmod +x docker/entrypoint_rails.sh
CMD docker/entrypoint_rails.sh
供参考,编译完 assets 后,又把 node_modules 清理掉了,然后把项目 copy 过来。进入第二阶段构建。只安装 ruby 库相关的依赖。
赞
分享个还比较优雅的方案:
地址数据尽量不要用 gem,推荐从地图(腾讯或高德)API 同步到数据库:https://github.com/work-design/rails_profile/blob/20a9938c32e05442af54fe1886f2d266bf321678/app/models/concerns/qq_map_helper.rb#L52
写一个通用的级联查询的 js,基于 stimulus: https://github.com/work-design/rails_ui/blob/master/app/assets/javascripts/stimulus_com/taxon.js
调用示例:https://github.com/work-design/rails_com/blob/main/app/views/com/nodes/_children_options.html.erb
很好的解答了我的疑问。
斗胆问一下,为什么厌倦用代码编辑器写文章。
体验了下,不能实时预览 (比如输入 ## 空格 然后就 H2 级别标题),我觉得我可能就放弃了。
我觉得 markdown 编辑器有很多用户体验很好的呀。就算是 web 版本的,我觉得 slate.js 更好用。
泛域名需要调用 dns 服务商的接口 更新 records
所以 你会用 ruby-china 写作了呗。我说的跟你说的可能不是一码事。
体验过。不能满足我上述需求。作为知识库管理工具确实不错。当然我这个也可以和 logseq 打通,用 logseq 来书写。
看来是历史遗留原因。cdn 的问题,我用的 upyun,它也可以自动颁发。我有段时间也是手段换 ssl 证书,后来搞的小项目多了,就觉得好麻烦。
先赞。
个人浅见:如果有这个精力弄这个,我宁愿花时间完善下自动化颁发 SSL 证书。
断断续续完善的,配合阿里云的接口,整体的时间算下来差不多 3-5 天左右吧。
自荐。
https://github.com/work-design/home,
我们的全栈及模块化治理策略,整体代码量低,架构清晰。
同时我还实现了相关的开发及部署工具,比如集成了 Vite,应该是目前 Rails 圈子里最舒服的前端开发体验。
可加我微信 one-work-design
https://github.com/work-design/engine
https://github.com/work-design/home
如果确定要用 ruby 的方案的话,倒不妨看看我们的开源组件方案。你想要的功能基本都有,且每个组件都在不断迭代中。
哈哈,前段时间也刚搞过这个。可气的就是文档根本没说清楚。
而encrypted跟tag拼接再经过 Base64 处理其实就对应了微信给你的ciphertext(文档没有详细说,尝试出来的)
qq 邮箱可以说是国内最好用的邮箱了。不过正式点可以用 foxmail 后缀。
module Xx
def delete
end
end
File.singleton_class.prepend Xx
单表继承,我认为还不够体现 ruby 的灵活性:
所以我在 engine 中,全面拥抱了 module 方案:
class AcmeAccount < ApplicationRecord
include RailsCom::AcmeAccount
end unless defined? AcmeAccount
特点:
class User < ApplicationRecord
include RailsAuth::User
include RailsOrg::User
include RailsNotice::User
include RailsTrade::Buyer
end
添加一个模块几乎不需要修改老代码,主要就是创建子类 (Concrete class)
对这块实现比较好奇?具体的思路求分享。
官网的图+logo,完美结合,很美