Ruby China
  • Topics
  • 招聘
  • Wiki
  • 酷站
  • Gems
  • Sign Up
  • Sign In
lychee
@lolychee
VIP
NO. 452 / 2011-12-12

北京
1 Topics / 96 Replies
2 Followers
0 Following
2 Favorites
GitHub Public Repos
  • authcat 6

  • manyou 1

    A lightweight Community Forum base on Rails3 and Mongodb

  • mongoid-association_scope 1

  • vscode-docs 0

    Public documentation for Visual Studio Code

  • dotfiles 0

  • boost 0

  • actions-build-padavan-... 0

    GitHub Action 学习实例 - 自动编译 padavan 和 openWrt

  • grape-entity 0

    An API focused facade that sits on top of an object model.

  • lolychee.github.io 0

    personal blog

  • terraform-provider-qin... 0

    Terraform QingCloud Provider

More on GitHub
  • Overview
  • Topics
  • Replies
  • Favorites
  • Following
  • Followers
  • 自定义 yml 文件里读取<%= ENV ['XX'] %>的问题 at March 01, 2015

    这是 ERB 的语法,rails 默认让 yml 文件都先经过 erb 执行一遍,你可以用这个方法加载 yml,顺便看看他的源码。 http://api.rubyonrails.org/classes/Rails/Application.html#method-i-config_for

  • [已解决] link_to 背后有很多黑魔法 at January 09, 2015

    我先试着回答一下楼主的问题:

    1. 检查你的 Gemfile 文件,确保其中有gem 'jquery-rails'
    2. 更新 Gemfile 后,执行bundle install
    3. 确保 application.js 中有//= require jquery和//= require jquery_ujs
    4. 重启你的 Rails Server

    更新后的内容,大概你不是用 development 模式启动的 Server? 开发模式应该是直接显示错误而不是 500 页面吧. 具体的错误内容检查一下log/*.log吧,看看到底什么错误。

    然后,你到底对黑魔法这个词有多执着。作为新手不要总是抱怨,不要总觉得:哦,为什么和我想的不一样,这是黑魔法,真受不了。 来看看你眼中的黑魔法是怎么处理 data-method 的: https://github.com/rails/jquery-rails/blob/master/vendor/assets/javascripts/jquery_ujs.js#L172-L189 只有十八行,实现方法是生成一个表单然后提交。真的简单到不能再简单。这也算黑魔法的话,那简直遍地黑魔法。

    Rails 是面向专业人士设计的,使用简单不代表不需要学习背景知识和练习实践。举个例子,电脑键盘很简单吧,只需要把键按下去就行了。但是!你第一次用的时候能打多快?是不是要边看键盘边看屏幕,不停地找每个键在哪里?必须经过一段时间的练习才能熟练的盲打。而学习 Rails 这样复杂的东西,更是需要很长一段时间的学习练习。

  • 如何添加一个 Cookie 使用协议 at October 10, 2014

    js 可以读写 cookie 的,应该是 js 实现的

  • 如何实现一个类似 Facebook/ 人人网的添加好友系统? at October 10, 2014

    friendship 就应该简单,是朋友就有记录,不是就没有。 加好友这些应该放到 notifications 通知系统里面。

  • 最简化的在线协同编辑产品 at October 07, 2014

    https://hackpad.com/ 这个怎么样

  • 《Linux 命令行》中文版 PDF 上线了,epub 也上了 at October 03, 2014

    能不能输出 epub 版?

  • Rails 中如何实现 “忘了我” 的功能? at September 23, 2014

    很奇怪为什么要把 session 设置成不过期,session 本来就是用来暂存会话数据的地方,会话结束,数据也就没用了。 如果是需要持久化的数据,要么存在服务器端数据库中,要么是客户端 cookie 中,所以,你为什么不直接操作 cookie,把用户登录令牌存进去。而且可以设置过期时间。

  • 我想再同一个页面通过 Bootstrap 3 的模态 Form 显示新增和编辑信息,结果报错 at September 22, 2014

    不知道你的代码是怎么出错了,不过我有更简单的实现方法,用 rails 的 ujs

    app/views/departs/_new_modal.html.erb

    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
      <div class="modal-dialog">
        <div class="modal-content">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
            <h4 class="modal-title" id="myModalLabel">新增</h4>
          </div>
    
            <%= form_for(@depart) do |f| %>
              <div class="modal-body">
                <%= f.label :name %>
                <%= f.text_field :name %>
                <br>
                <%= f.label :note %>
                <%= f.text_field :note %>
              </div>
    
              <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
                <%= f.submit "保存", class: "btn btn-default" %>
              </div>
            <% end %>
        </div><!-- /.modal-content -->
      </div><!-- /.modal-dialog -->
    </div><!-- /.modal -->
    

    app/views/departs/new.js.erb

    $(".modal").modal("hide");
    $("<%= j render 'new_modal' %>")
    .on("hidden.bs.modal", function() { $(this).remove() })
    .appendTo(document.body)
    .modal("show");
    

    app/views/departs/index.html.erb

    
    <%= link_to "新增", new_depart_path, class: "btn btn-sm btn-primary", data: { remote: true } %>
    
    

    controller 不用动,edit 照上面改改就行了

  • 有必要用 rails_admin 吗? at September 21, 2014

    简单的话,后台就自己写吧,因为没多少功能。 复杂的话,还是自己写吧,用 gem 什么的定制太麻烦,还是自己写灵活。 总的来说就是自己写。

    一般用 scaffold 生成的模板改改就能行了,在这基础上再慢慢加功能。

  • 学习《Rails tutorial》时关于测试的一个诡异的问题 at August 24, 2014

    你应该把 visit root_path 挪进去,因为 click_link 的时候会跳到别的页面,不是首页当然找不到

  • 在 Rails 的 Model 中定义 method_missing 覆盖了 AR 默认的肿么办…… at July 27, 2014

    #16 楼 @cassiuschen 看了这段才知道你想要什么 试试这个: http://api.rubyonrails.org/classes/ActiveRecord/Store.html

  • 现在 Ruby China 主站开启 SSL at May 24, 2014

    登录的时候多加一个 cookie 用来标识是否登录

    cookies.permanent[:is_login] = { value: 1, secure: false }
    

    然后把全局的 force_ssl 换成

     force_ssl if: :ssl_configured?
    
    def ssl_configured?
      !Rails.env.development? && cookies[:is_login].present?
    end
    

    这样的话游客就用 http 好了,搜索引擎也属于游客,而登录会员则跳转到 https。

    上面的代码没经过测试,谨慎使用

  • head 里,将 meta 标签写成了 meat,导致在 iOS7 safari 里直接忽略后续标签 [已解决] at May 18, 2014

    #17 楼 @everpointer 不对不对 你没找到重点

    %meat
    
  • head 里,将 meta 标签写成了 meat,导致在 iOS7 safari 里直接忽略后续标签 [已解决] at May 18, 2014
    %meat{"name" => "apple-mobile-web-app-status-bar-style", "content" => "blank"}
    

    一行行对比就能发现从这里开始不正常了

  • FIR.im 新版内测申请!免费的 App 托管平台. 可以 2 步简单发布应用程序, 极大简化了 App 内测 (Ad-Hoc) 的过程. at May 02, 2014

    提问: 什么是 FIR? 什么是 UDID? 为什么更新版本很频繁所以用你们的产品,是因为它可以一键传到各个应用商店吗? 为什么我不想搞服务器就要使用你们的产品,是因为你们有公有云平台吗? 为什么我生命有限就要使用你们的产品,是因为它能让我更健康?

    抱歉我是小白,这篇帖子我完全看不明白。

    这个产品能干什么? 解决了什么问题? 面向哪些客户群体?

  • production 环境下 localhost:3000/assets/uploadimage/pic.png 无效 at March 15, 2014

    assets 是用来存放前端资源的 上传图片应该放在 public 目录下

  • 有沧州小伙伴吗,要是有就太好了 at March 15, 2014

    沧州还有用 ruby 的公司?!

  • Rails 中 ActiveResource 访问 JAVA API 异常. at February 18, 2014

    http://ruby-china.org/topics/8042

  • rails 范围查找函数有吗 (已解决) at January 21, 2014
    def exp_to_lv(exp, map)
      map.each_with_index do |limit, level|
        return level if exp < limit
      end
      raise 'exp not in map'
    end
    
    map  = [
      0,                     #达到1级所需经验
      10,                    #达到2级所需经验
      100,                   #达到3级所需经验
      # ...........
    ]
    
    puts "exp: 15, lv: #{exp_to_lv(15, map)}"
    
  • 一个在搜索页面的 link 该如何优化? at December 02, 2013
    url_for(params.merge(sort: :name))
    
  • 省略括号导致的语法歧义 at September 17, 2013

    楼主忘了还有这样定义正则的写法:

    puts %r/ s /xi
    

    这样修改之后 你的例子是完全没问题的

  • 如何更好地回答 at April 17, 2013

    http://lmgtfy.com/?q=%E5%A6%82%E4%BD%95%E6%9B%B4%E5%A5%BD%E5%9C%B0%E5%9B%9E%E7%AD%94

    这里有一个非常好用的工具

  • 自学 Rails 过程中遇到了 Unknown key: admin 问题 at January 13, 2013

    @user = User.find(params[:user]) 改成 @user = User.find(params[:id])

  • 大家对于在 for 循环中创建闭包的问题有什么解决方法没? at December 15, 2012
    def a
      Array.new(6) do |i|
        lambda {|x| i**x }
      end
    end
    
  • 打印数字金字塔 at September 23, 2012
    #!/usr/bin/env ruby
    
    gets.to_i.tap do |n|
      (1..n).each {|i| puts ((a = (1...i).collect{|x| x%10 }.to_a.join) + (i%10).to_s + a.reverse).center(n*2-1) }
    end
    

    这是通用版 好难看的一坨

  • 根据当前路径,查询是 collection 还是 member 方法? at July 03, 2012

    猜测你要解决的问题是多个 path 指向同一个 action,并且要在 action 内针对不同的 path 做不同的处理。

    通常来说 member 能拿到 id,而 collection 不能,检查params[:id]即可。

    更严谨的解决方法是

    resources :post do
      post :search, on: :collection, defaults: { type: :collection }
      post :search, on: :member, defaults: { type: :member }
    end
    
  • 经过五一仍未搞清这里为什么 Session 为空-.- at May 03, 2012
    class ApplicationController < ActionController::Base
    
      protect_from_forgery # 这里不用动
    
    end
    
    
    class PostsController < ApplicationController
    
      protect_from_forgery :except => :upload # 在这里加一句
    
    end
    
    

    之前也遇到这个问题,ajax 上传导致用户登录状态丢失

  • 两个思考后无果的问题,望指教:) at April 16, 2012

    Answer1:

    class AdminController < ApplicationController
    
    before_filter do
     (redirect_to login_path; return) unless logged_in? # logged_in? 请自行实现
    end
    
    end
    
    

    Answer2: 可以试试这个 gem: https://github.com/binarylogic/settingslogic

    原理就是把数据存到了一个 yaml 文件中

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