Ruby China
  • Topics
  • 招聘
  • Wiki
  • 酷站
  • Gems
  • Sign Up
  • Sign In
Rei
@Rei
Admin
NO. 1 / 2011-10-28

[email protected]
深圳
188 Topics / 9165 Replies
731 Followers
0 Following
11 Favorites
中下水平 Rails 程序员
Reward
GitHub Public Repos
  • writings 941

    [Closed] Source code of writings.io

  • alipay 732

    Unofficial alipay ruby gem

  • code_campo 291

    [Closed] Source code of http://codecampo.com

  • asciidoctor-pdf-cjk-ka... 101

    **no longer maintained**

  • geeknote 34

  • asciidoctor-htmlbook 31

    Asciidoctor HTMLBook is an Asciidoctor backend for converting AsciiDoc documents to HTMLBook docu...

  • material-ui 17

  • rich-text-editor 12

  • htmlrenderer 12

  • rails-chatgpt-demo 8

More on GitHub
  • Overview
  • Topics
  • Replies
  • Favorites
  • Following
  • Followers
  • 请教一下,我在笨鸟码书那边买了 ROR 教程,但是现在网站一直显示在维护 at August 09, 2022

    我在推上发了私信,看有没有回复。

  • Turbo Stream 渲染时 data-dismiss 等事件失效,有什么好办法? at August 08, 2022

    看了一下文档,只给了 plain js 的实例,意思就是让开发者根据自己用的框架包装。

    用 Stimulus 写一个包装是这样:

    // dismiss_controller.js
    
    import { Controller } from "@hotwired/stimulus"
    import { Dissmis } from "flowbite"
    
    export default class extends Controller {
      connect() {
        const targetEl = document.querySelector(this.element.getAttribute('data-dismiss-target'))
    
        new Dismiss(targetEl, {
          triggerEl: this.element
        })
      }
    }
    

    用的时候加上 data-controller

    <button type="button" class="..." data-dismiss-target="#alert-1" data-controller="dismiss">
        ...
    </button>
    
  • Turbo Stream 渲染时 data-dismiss 等事件失效,有什么好办法? at August 08, 2022

    tailwind 有 data-dismiss-target?用了其他插件吧?

    跳到结论:Stimulus 就是解决这问题的。

  • 请教一下,我在笨鸟码书那边买了 ROR 教程,但是现在网站一直显示在维护 at August 04, 2022

    网页里面有邮件地址

    顺便 @andor_chen

  • Rails 7 esbuild 无法在 application 里 import controller 文件夹 at August 01, 2022

    特指 index.js,这个 js 文件里面要手工 import 其他文件。import 文件夹是某些工具例如 webpacker 配置的规则。

    而且我没查过 esbuild 是否默认支持 import 文件夹的时候找 index.js。

  • stimulus.js 初体验 at July 31, 2022

    感谢用了我的 todo-mvc 例子,这个代码比较旧,也刚好展示了 stimulus 的弱点,就是没有包含前端渲染。

    这是它设计的定位决定的,stimulus 适合那些后端渲染已经解决大部分问题,只是要添加一点交互的场景。todo-mvc 是一个全前端渲染的例子,所以用 stimulus 要进行很多 dom 操作,变得很繁琐。

    需要前端渲染的组件,我推荐看一下 https://lit.dev/ ,它的代码看上去跟 stimulus 很像,但是多了前端模版和数据绑定。而且是基于 web component 通用性更好,不像 vue 和 react 基本上一引入就引入了全家桶。

    但另一方面,stimulus 对后端渲染是最友好的,可以用后端的方式调整 html 结构和样式。

    我还有一些 stimulus 实践例子可以看这里 https://geeknote.net/Rei/collections/32

  • RailsConf 2022 at July 20, 2022

    Hotwired 主题一个,没有 css/js-bundling 的主题。RailsConf 这届组织者不但没邀请 DHH,还忽略了 Rails 7 前端部分的重要更新。

  • 有没有推荐的书籍或者电子书 at July 06, 2022

    Rails 5 敏捷开发 https://book.douban.com/subject/27615703/

    版本有点旧了,如果英文阅读没问题可以看原版

    Agile Web Development with Rails 7 https://pragprog.com/titles/rails7/agile-web-development-with-rails-7/

    这本书适合入门,如果已经有 web 开发基础,其实看官方文档比较高效,而且讲得更细。

  • 网站打开很慢或打不开 at June 26, 2022

    只能说互联网充满危险。

  • Rails7 中 Stimulus 的 .js 文件中 如何通过判断数据是否被成功执行 来控制其是否触发 JS 操作 at June 25, 2022

    复杂情况交给前端处理,不用 turbo stream。

  • 网站打开很慢或打不开 at June 25, 2022

    国内的 DDOS 防护,价格每月要上万。

  • 网站打开很慢或打不开 at June 25, 2022

    因为时不时遇到 DDOS,网站加了 Cloudflare 代理,国内访问会变慢,这也是没办法的。科学上网会更快因为线路更好。

  • 请教下大家,我希望在 Rails 应用中做一个可以切换主题色、字体大小的菜单,如何让菜单即时生效而不用手动点保存呢 at June 19, 2022

    做过类似的功能,演示效果看 https://asciibook.org/docs/ 右上角 tT 按钮菜单。

    纯前端实现,代码在 https://github.com/asciibook/asciibook/blob/master/theme/html/html.js#L78-L153

    思路:

    • 做一个切换样式的表单
    • 绑定事件,表单内容变化时,修改 body 的 style。
    • 将每个选项的值储存在 localstorage。
    • 加载页面时,读取 localstorage,同步页面样式和表单的值。
  • Rails 3.2 项目线上部署问题 at June 15, 2022

    Ruby 不像 Java 或者 Go 那样可以编译成一个可执行文件,通常是在服务端 pull 代码。

    需要“打包”的话推荐 Docker。

  • Rails 3.2 项目线上部署问题 at June 15, 2022

    核心就这几行

    git pull
    bundle install --deployment
    bin/rails asset:precompile
    bin/rails db:migrate
    bin/rails server -e production
    

    写到脚本就是脚本部署,远程 ssh 执行就是远程部署,写到 Dockerfile 就是容器部署。

  • 问一下怎么删帖啊? at June 13, 2022

    有回复的主题不能删除,可以编辑清除内容。

  • Devise 超热门,但有可以取代的 gem 吗? at June 13, 2022

    我自己写的。

  • Python 的 Masonite 会不会进一步压缩 Ruby + Rails 的生存空间了? at June 13, 2022

    Fresh - The next-gen web framework. https://fresh.deno.dev/

    完了完了,下一代又出来了。

  • rand vs rand at June 10, 2022

    可以挖深一点源码有什么不同。

  • Python 的 Masonite 会不会进一步压缩 Ruby + Rails 的生存空间了? at June 10, 2022

    Python 早就有 Django 了。

  • Macbook Pro M1 gem install 失效 at June 09, 2022

    我留意你运行 gem install 的时候用了 sudo,但安装目录是 homebrew。homebrew 的安装目录是属于用户的,不需要 sudo,所以出现了权限的问题。

  • Macbook Pro M1 gem install 失效 at June 08, 2022

    运行 gem env,把 EXECUTABLE DIRECTORY 的路径加到 PATH 里。

    例如在 ~/.bash_profile 里面加入以下内容:

    export PATH="/usr/local/lib/ruby/gems/2.7.0/bin:$PATH"
    

    路径要替换成你自己的路径。

  • 这段 docker-compose 有问题么? at June 08, 2022

    这是声明一个命名 volume 让 compose 放到默认目录。

  • 在 Docker 环境里,大家密码都是如何管理的呢? at June 07, 2022

    首选部署平台或编排系统的 secrets 机制,有的是通过文件提供,有的是通过环境变量提供。

    app 用 dotenv 管理 env,可以同时支持 ENV 变量和 .env 文件两种形式。

  • 新手部署 Rails 过程中遇到的 Ubuntu 18.04 安装 Nginx + Passenger 失败问题 at June 07, 2022

    用 puma 就行了,Rails 新建项目从开发环境就默认 puma。

  • 有段时间没写 Rails,看着 7 出了,自己试了试,引入 Font-awesome 遇到点问题。 at June 03, 2022

    写了一篇日志记录解决的原理 https://geeknote.net/Rei/posts/1222

  • 有段时间没写 Rails,看着 7 出了,自己试了试,引入 Font-awesome 遇到点问题。 at June 02, 2022

    验证过的方法:

    在 config/initializers/assets.rb 加入:

    Rails.application.config.assets.paths << Rails.root.join('node_modules/@fortawesome/fontawesome-free/webfonts')
    

    在 application.sass.scss 加入:

    $fa-font-path: ".";
    
    @import "@fortawesome/fontawesome-free/scss/fontawesome.scss";
    @import "@fortawesome/fontawesome-free/scss/solid.scss";
    

    其他不用改,包括 manifest.json。

  • ruby2.1.6 安装 mysql2 依赖错误哪位老师指点一下 折腾一周了快 mysqlclient 已经安装但就是找不到 at June 01, 2022

    缺少 mysqlclient 的库,楼主没贴是什么系统没法提供方案。

    例如 ubuntu 要装的是 libmysqlclient-dev

  • 有段时间没写 Rails,看着 7 出了,自己试了试,引入 Font-awesome 遇到点问题。 at May 31, 2022

    编辑:行不通,看 18 楼。


    我看了下 fontawesome 的源码,也许要加上 fa-font-path 变量,从 scss 编译。

    因为 fa-font-path 默认是相对路径 '../webfonts',上面的 link_tree 已经进入了 webfonts 这个目录。

    $fa-font-path: '';
    
    // You probably already include the core styles
    @import "./fontawesome/scss/fontawesome.scss";
    
    // For Duotones you need both of these files
    @import "./fontawesome/scss/duotone.scss";
    @import "./fontawesome/scss/_duotone-icons.scss";
    
    // You can include all the other styles the same as before
    @import "./fontawesome/scss/solid.scss";
    @import "./fontawesome/scss/brands.scss";
    
  • 有段时间没写 Rails,看着 7 出了,自己试了试,引入 Font-awesome 遇到点问题。 at May 31, 2022

    编辑:行不通,看 18 楼。


    因为 sass 不处理引用的资源(字体或者图片),这还需要 assets pipeline 处理。

    如果 assets pipeline 用的是 sprocket,那么可以在 manifest.js 里面添加设置:

    //= link_tree ../../../node_modules/@fortawesome/fontawesome-free/webfonts
    

    注意这个路径是否匹配你的安装路径。设置这个后,sprocket 会把这个 webfonts 目录下的资源加入 pipeline,并且替换 css 里面用 url() 引用的资源地址(加上 digest)。

    如果还有问题可以参考这个 issue https://github.com/rails/cssbundling-rails/issues/22#issuecomment-1030735501 。

  • Prev
  • 1
  • 2
  • …
  • 7
  • 8
  • 9
  • 10
  • 11
  • …
  • 273
  • 274
  • Next
关于 / RubyConf / Ruby 镜像 / RubyGems 镜像 / 活跃会员 / 组织 / API / 贡献者
由众多爱好者共同维护的 Ruby 中文社区,本站使用 Homeland 构建,并采用 Docker 部署。
服务器由 赞助 CDN 由 赞助
iOS 客户端 / Android 客户端 简体中文 / English