• 撸主 我真心觉得最好先提高一下 ruby 代码的水平再想怎么解决问题... 看你的第一个脚本 都想哭了

  • Ruby 代码格式标准讨论 at 2013年04月28日

    #3 楼 @gazeldx 这个是我浏览器收藏架的第一位 从开始学 ruby 就一起学了哈

  • #6 楼 @cqpx 高端

  • -> 产生的 this 指向的是 $('#something')

    => 产生的 this 是外面的 this 吧

  • 短信接口编码格式 at 2013年04月27日
    Mechanize.new.get('http://www.smsadmin.cn/smsmarketing/wwwroot/api/get_send/',
                                    { uid: ***,
                                      pwd: ****,
                                      mobile: ***,
                                      msg: "nihao#{@str}",
                                    })
    

    撸主用个 gem 岂不是很好

  • dream.jp 的中文版 不优惠 但是能用支付宝

  • 不知道李笑来老师算不算一个

  • 吐槽 textmate at 2013年04月23日

    撸主搜索下 Textmate 中文字体 虽然瘦了点 但是无压力 多年 Textmate 习惯 导致不喜欢 sublime 和菊花...

  • 大三就这么牛了 确实厉害

  • 看上去只能用第三方服务了 或者自己用 Faye 写一个

  • #12 楼 @kgen 我宁愿重建以后去趟那边去消费 捐款等于给蛀虫送钱

  • 例如你开了 2 个进程 nginx 反向代理 更新的时候先停掉一个 然后更新以后启动一个 再停掉另一个 启动另一个 这样看上去是没停

  • 测试时区问题 at 2013年04月19日

    #12 楼 @kgen 看了看文档 :db format outputs time in UTC; all others output time in local. Uses TimeWithZone’s strftime, so %Z and %z work correctly. 不知道为什么这么设计... 项目里所有的 time 都用了 to_s(:db) 刚升的 3 所以没办法了 没法一个一个改啊

  • 测试时区问题 at 2013年04月19日

    #12 楼 @kgen 关键是 这个就是新开的 created_at 显示的 Time 对象 是自动帮我转了 local 时间 但是 to_s(:db) 还是 UTC 发现问题了 可是为什么呢...

  • 测试时区问题 at 2013年04月18日

    #9 楼 @kgen 麻烦有空帮忙看下...

  • 测试时区问题 at 2013年04月18日

    #9 楼 @kgen 怎么查呢 存的时候 created_at 是 UTC 时间 console 和跑起来都只能拿到 UTC 时间的 created_at...

  • 测试时区问题 at 2013年04月18日

    #6 楼 @kgen 不会啊 要是不设置 active_record 的 timezone timestamps 的时间不会帮我转的呀 是不是别的地方还有设置?我们也是刚升 rails3 就出了这个问题了

  • 测试时区问题 at 2013年04月18日

    config.active_record.default_timezone = :local

    #3 楼 @kgen 我也请问 应该怎么做呢

  • 太牛逼了

  • #32 楼 @qhwa #33 楼 @donnior 二位大牛重构的真不错哈

    #30 楼 @jarorwar 我是按照你的 Java 思路来改的 他们二位是按照重构的思路来改的 我觉得重构思路你理解起来会费劲 所以先打好语言基础哈~ 同是 Java 转的 我当时也非常的痛苦

  • #30 楼 @jarorwar 又有两个大牛给你范例了哈 他们改的更彻底了 学学他们的哈

  • #24 楼 @jarorwar

    #!/usr/bin/env ruby
    # encoding: utf-8
    #copy tag from test env to prod env
    require 'mysql2'
    class TagCopy
    
        CMS_COLUMNS = %w[id no tag_key tag_name tag_url tag_desc structure type isleaf child level brand_no category_no channel_no other_no row_num site sort_no ad_quantity image_size parent_id enable_more].join(',')
    
        def initialize
            @from_db = Mysql2::Client.new(:host => "192.168.xx.xx", :port => 3306, :username => "mysql", :password => "mysql", :database => "mydb")
            @to_db = Mysql2::Client.new(:host => "192.168.xx1.xx2", :port => 3306, :username => "root", :password => "root", :database => "mydb")
        end
    
        def get_tag_by_key(tag_key)
            results = @from_db.query("SELECT #{CMS_COLUMNS} FROM tbl_cms_tags WHERE tag_key = '#{@from_db.escape(tag_key)}'")
            uuid = @to_db.query("SELECT REPLACE(UUID(),'-','')", :as => :array).to_a[0]
            puts "total #{results.count} records "
            srid = @to_db.query("SELECT id FROM tbl_cms_tags WHERE tag_key = 'ol_main'").to_a[0]
    
            results.each do |row|
                #puts row.inspect
                add_tag(row, uuid[0], srid[0])
                getChild(uuid[0], row["id"]) if row["child"] > 0
            end
            @from_db.close
            @to_db.close
        end
    
        def getChild(new_pid, parent_id)
            results = @from_db.query("SELECT #{CMS_COLUMNS} FROM tbl_cms_tags WHERE parent_id = '#{@from_db.escape(parent_id)}'");
    
            results.each do |row|
                uuid = @to_db.query("SELECT REPLACE(UUID(),'-','')", :as => :array).uuid.to_a[0]
                add_tag(row, uuid[0], new_pid)
                getChild(uuid[0], row["id"]) if row["child"] >0
            end
        end
    
    
        def add_tag(row, id, parent_id)
            row.merge!('id' => id, 'site' => row["site"] || 0, 'row_num' => row["row_num"] ? row["site"] : 1, 'sort_no' => row["sort_no"] || 0)
            insert_sql = "INSERT INTO yitian_b2c_db.tbl_cms_tags (#{row.keys.join(',')},ad_quantity) VALUES (#{row.values.map{|v| "'#{v}'"}.join(',')},0)"
            puts insert_sql
            @to_db.query(insert_sql)
        end
    end
    
    if __FILE__ == $0
        tc = TagCopy.new
        tc.get_tag_by_key("ol_index")
    end
    

    简单帮你改了改 肯定还能优化的 我没运行起来 可能会有小错误 只能你自己小调试啦 没这么多时间哈~

  • #2 楼 @tianshuai 额 怎么放了一个这么大的 XML 在 public 目录下面呢... 你在服务器的 console 下调试一下试试?

  • #24 楼 @jarorwar 约定大于配置啊 两行你看起来更习惯 但是大部分 Rubyist 都不习惯啊 所以我觉得这是 优美可读与一坨 的一个矛盾所在... :)

  • 同样是 Java 转 Ruby 我的建议是: 首先 不推荐上来就写这么复杂功能的东西 应该先把书看完 第一本:Ruby Programming 然后 能写一行的 不要写两行

    uuid =@to_db.query("SELECT REPLACE(UUID(),'-','')", :as => :array)
    uuid = uuid.to_a[0]
    

    直接写成 uuid =@to_db.query("SELECT REPLACE(UUID(),'-','')", :as => :array).to_a[0] 不好么... 第三 看下 Ruby 风格指南 http://stylesror.github.io

    最后 祝你早日拜托屎一样的一坨坨...