Ruby China
  • 社区
  • 招聘
  • Wiki
  • 酷站
  • Gems
  • 注册
  • 登录
yang
@heroyct
会员
第 33357 位会员 / 2017-10-26

18 篇帖子 / 140 条回帖
8 关注者
0 正在关注
2 收藏
未设置 GitHub 信息。
  • 概况
  • 话题
  • 回帖
  • 收藏
  • 正在关注
  • 关注者
  • 关于下拉菜单在手机上怎么优化 at 2018年10月24日

    感觉好像广告

  • 用 Docker 构建开发环境 at 2018年10月16日

    @ad583255925 @yukihiro_matz
    目前项目用的是 AWS ECS + CircleCI 来部署,负载均衡是 ELB

  • 如何禁用 Rails 的 Assets Pipleline? at 2018年10月11日

    能说下为什么要禁止使用 stylesheet_link_tag 吗? 把背景说清楚,或许有更好的方法来解决

  • Ruby 里面对象的方法调用方式除了 obj.method 的形式,还有 obj::method 的形式? at 2018年10月10日

    应该是,不过很少那样写,用 . 就可以了

    The :: is a unary operator that allows: constants, instance methods and class methods defined within a class or module, to be accessed from anywhere outside the class or module.
    Remember: in Ruby, classes and methods may be considered constants too.

    这篇文章可以看看
    https://cbabhusal.wordpress.com/2015/03/26/ruby-ruby-dot-and-double-colon-operators/

  • cell gem 默认不进行 html escape 问题 at 2018年10月09日

    暂时把 cell 的 render 改成了 rails 的 render

    class CellBase < Cell::ViewModel
      attr_accessor :response_body
    
      include AbstractController::Rendering
      include AbstractController::Helpers
      include ActionView::Layouts
    
      helper ApplicationHelper
      include ApplicationHelper
    
      self.view_paths = ['app/cells']
    
      def self.supports_path?
        true
      end
    
      def action_name
        caller(5, 1)[0].match(/`(\w+)/)[1]
      end
    
      # 让view中可以访问cell class里面的方法
      def self.inherited(klass)
        def klass.method_added(name)
          helper_method(name)
        end
      end
    end
    
  • ruby 中如何定义枚举值 at 2018年10月09日

    有类似的

    1. active enum

    2. module

    module Gender
      FEMALE = 1 # 女性
      MALE   = 2 # 男性
      LABELS = { FEMALE => '女性', MALE => '男性' } # 也可以使用I18n来定义
    end
    
    Gender::FEMALE
    Gender::MALE
    
  • 写 Responsive 页面的总结 at 2018年10月04日

    @posee
    挺多的

    • https://www.invisionapp.com/inside-design/examples-responsive-web-design
    • https://www.awwwards.com/50-examples-of-responsive-web-design.html
  • [东京] 诚招有经验的工程师 at 2018年10月03日

    @posee 我以前半年,现在一年,因人而异吧

  • cell gem 默认不进行 html escape 问题 at 2018年10月01日

    @Rei 目前我也是这么想的,因为感觉这个 gem 不太稳定 (突然设计风格就变了)
    只是目前所有页面都是 cell 写的,这改造的活量有点大
    所以问问看有没有类似问题的人,借鉴一下经验

  • 用现代 Rails 逃离单页面应用 “兔子洞” at 2018年10月01日

    @Rei
    我用的 docker-sync, 速度还行 https://ruby-china.org/topics/37289

  • 写 Responsive 页面的总结 at 2018年10月01日

    @luikore 第一次做 responsive 的项目
    确实和 UI 设计关系很大,有些设计不适合或者很难做 responsive
    换个角度说要做 responsive,你需要 responsive 的 UI 设计,一开始就和做 UI 的达成共识很重要

  • [东京] 诚招有经验的工程师 at 2018年10月01日

    @charleszhang 日语,日本人英语不行。我英语也不行,不过欧美在日本的公司应该是用英语

  • 用现代 Rails 逃离单页面应用 “兔子洞” at 2018年09月30日

    @Rei stimulus 好像不行?没具体试
    https://github.com/stimulusjs/stimulus/issues/59
    看这里说好像需要 5.1 以上

  • 用现代 Rails 逃离单页面应用 “兔子洞” at 2018年09月29日

    很多项目是 rails5 以下的,对于一个正在运行的项目,要升级到 5 不是容易的事情

    rails 5 以上的项目我想我会尝试使用 rails-ujs + turbolinks + stimulus

  • RubyMine 加强了对 I18n 的支持 [文末有福利] at 2018年09月29日

    @rocLv 没全部试,基本都有,个人最喜欢的是 auto complete 其他的随意吧

  • [东京] 诚招有经验的工程师 at 2018年09月29日

    我也在东京上班,帮你顶一个

  • RubyMine 加强了对 I18n 的支持 [文末有福利] at 2018年09月29日

    好像很早就支持了?看了下目前使用的版本 2016.2, 也支持这个特性

  • 总结了下 routes 的使用 at 2018年09月10日

    @matrixbirds

    这样分文件的话 要注意配置一下 eager load path

    能详细说一下吗?目前用的是 rails 4.2,没有进行其他配置

    是这类问题吗? https://blog.arkency.com/2014/11/dont-forget-about-eager-load-when-extending-autoload/ https://stackoverflow.com/questions/48538755/eager-load-all-classes-before-routes-rb-being-loaded

  • 如何本地编译 asset ,然后推送到云端使用? at 2018年09月10日

    asset 文件的 hash 值从 manifest file 读取的
    可能是你服务器没有上传这个文件

    一般是这样 public/assets/manifest-xxxxxxxx.json

    具体可以参考这里
    https://guides.rubyonrails.org/asset_pipeline.html#manifest-files-and-directives

    不清楚你云端什么样子,前面几楼也说过了,这种文件应该不用加入到版本控制,一般放到 CDN

  • 大家是如何处理 Rails 应用的 Model 层和数据库层的数据校验的? at 2018年09月05日

    某个字段需要限制为 50 个字符,很多时候需要在多个地方定义相同的规则

    比如比较常见的地方

    • 数据库里面
    • model 类里面
    • 前端的验证里面

    我目前为止是在三个地方都写相同的规则,感觉确实比较繁琐
    但是因为他们处于不同的层 (layer) 里面,分离是必然的

    以前有想过定义一个 validation 的验证规则放到 json 之类的文件里面
    然后写个 script 自动生成相关的代码,但感觉有点麻烦就放弃了

    不知道大家有什么好办法

  • 这样设计合理吗 at 2018年09月04日

    每个数据库不同,比如 mysql 限制了一个表的最大字段数为 4096
    当然由于有 row limit,可能达不到这个数
    具体可以参考这里

    • Column Count Limits
    • Row Size Limits

    上百个字段的表目前还没没遇到过,即使是上百个字段也不能说一定不合理,
    合理不合理跟你保存什么内容、如何使用等等有关

    我觉的应该首先分析这个表 50 个字段导致了哪些问题让你感觉不合理
    分析完以后才能判断是不是真的不合理
    如果知道是如何变成这样的那就更好,有时候知道原因以后或许有种原来如此的感觉

    解决掉不合理的问题,应该就变成了合理了 (暂时)

  • 关于 CSS 样式表的层级嵌套问题 at 2018年08月31日
    • oocss
    • flocss
    • ecss
    • MCSS
    • ITCSS

    感觉大体都差不多
    目前在使用 ITCSS + BEM,维护很方便
    https://github.com/ahmadajmi/itcss

    最近感觉 smacss 不错

  • RubyMine 的快捷键功能分享 at 2018年08月31日

    刚开始记住这一个感觉就够了
    command + shift + a 在这里查询需要的功能就行了

  • 使用 docker-sync 让 mac 和 docker 之间的文件同步变快 at 2018年08月07日

    @fan124 如果使用自带的已经可以满足你现在的项目的话,没必要在使用其它的

    我使用 docker 自带的看一个页面大概需要 25 秒,实在太慢

    慢的原因帖子里面已经介绍 (osxfs 的原因)

    • https://forums.docker.com/t/file-access-in-mounted-volumes-extremely-slow-cpu-bound/8076/158

    以前用 vagrant 大概是 4 秒,现在用 docker-sync 大概也是 4 秒

  • 使用 docker-sync 让 mac 和 docker 之间的文件同步变快 at 2018年08月07日

    @ fan124

    我用 docker-sync 时,同步会有延迟

    目前还没发现延迟,我在 mac 改完保存以后刷新页面就更新了,IDE 的话可能是还未自动保存

    用 watch 命令来观察延迟,基本未发现延迟

    watch -n 1 cat test.rb
    

    container 里 rails g 出来的东西,不会在 local 出现

    还没试过,等会试下,重启 docker 是一种方法 也可以试试这个

    $ docker-sync clean
    $ docker-sync start
    

    推荐用官方的 cached

    services:
      app:
        volumes:
          - .:/www/sample_project:cached
    

    这个在 mac for docker 下太慢,没具体测试,感觉慢了十倍,基本没法用,所以才有这篇文章
    很多在 mac 下用 docker,不想再搞个虚拟机的可以参考下

  • [上海] 悦勤信息 2018 夏秋季:诚聘 Ruby/JavaScript 手艺人 (从兼职开始) at 2018年07月26日

    docker or vagrant 让 rails 跑在 linux 上
    然后在 windows 还是在 mac 上应该关系不大,毕竟实际运行在 linux 上 (windows 没跑过,也许有其他坑)

  • 用 VScode 撸 Rails,有什么好的插件? at 2018年07月19日

    最近前端用的 vs code(react + webpack), rubymine 感觉支持不太好

    vs code 目前感觉挺好,比如 webpack 的 resolve 很多 editor 都不支持
    vscode 设置一下就行了
    https://medium.com/@justintulk/solve-module-import-aliasing-for-webpack-jest-and-vscode-74007ce4adc9

  • Ruby GC 自述 at 2018年07月09日

    写的挺好
    https://ruby-hacking-guide.github.io/gc.htm
    这个网页不知道为什么打不开 (404)

    https://gettalong.org/blog/2017/memory-conscious-programming-in-ruby.html
    这里有一些节约 memory 的技巧
    感觉掌握一些基本的技巧就行,需要的时候再去 tuning
    有时候花时间去和内存战斗不如给服务器加点内存划算 (人工费之类的)

    高级语言就是让大家不用在意内存管理一次来提高生产效率,
    如果不得不花大量时间去调试内存使用量的时候,也许 ruby 不适合这个项目?
    比如把慢的模块用 C 之类的重写

  • Ruby 内联私有方法与原理 at 2018年07月03日

    试了下,发现 class method 也可以这样用

    一般写法

    def self.func_a
      puts 'func_a'
    end
    
    private_class_method :func_a
    

    放函数左边

    private_class_method def self.func_a
      puts 'func_a'
    end
    

    还是习惯这样写

    class Test
      class << self
        private
    
        def func_a
          puts 'func_a'
        end
    
        def func_b
          puts 'func_b'
        end
      end
    end
    

    instance method

    还是喜欢第一种写法,类里面写一个就行了,一般都喜欢放类最后面

    class Test
      private
    
      def func_a
        puts 'func_a'
      end
    
      def func_b
        puts 'func_b'
      end
    end
    
  • 想系统的看一下 Rails 的源码,有什么好的阅读方式吗? at 2018年07月02日

    quora 什么有相同的问题,可以参考下 https://www.quora.com/What-is-the-best-way-to-read-the-source-code-of-Rails

    1. 带着目的去读,比如你想读懂 belongs_to 是如何实现的
    2. 使用 IDE 或者 prb 之类的工具来尽快明白代码如何一步一步执行的
  • 上一页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 下一页
关于 / RubyConf / Ruby 镜像 / RubyGems 镜像 / 活跃会员 / 组织 / API / 贡献者
由众多爱好者共同维护的 Ruby 中文社区,本站使用 Homeland 构建,并采用 Docker 部署。
服务器由 赞助 CDN 由 赞助
iOS 客户端 / Android 客户端 简体中文 / English