<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>siriuszhuang (庄思睿)</title>
    <link>https://ruby-china.org/siriuszhuang</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>支付宝准备下架『担保交易』之后，个人开发者该如何应对？</title>
      <description>&lt;p&gt;今天收到支付宝的短信，被告知支付宝准备下架『担保交易』。然而个人开发者又不能申请『即时到帐交易』。那么以后该怎么办呢？有没有可用的替代品？&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Thu, 21 Jan 2016 10:30:25 +0800</pubDate>
      <link>https://ruby-china.org/topics/28801</link>
      <guid>https://ruby-china.org/topics/28801</guid>
    </item>
    <item>
      <title>关于 gem 包 i18n-tasks 的使用问题</title>
      <description>&lt;p&gt;我想请教一下，当我用 &lt;code&gt;i18n-tasks add-missing&lt;/code&gt; 的时候，程序自动添加的文本都没有带引号&lt;code&gt;””&lt;/code&gt;，这样会导致类似 &lt;code&gt;%{username}&lt;/code&gt; 这种参数会解析失败，能告诉我有办法自动将所有文本包含在一个引号中吗？&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Mon, 16 Jun 2014 14:26:08 +0800</pubDate>
      <link>https://ruby-china.org/topics/19970</link>
      <guid>https://ruby-china.org/topics/19970</guid>
    </item>
    <item>
      <title>扩展 ActiveRecord::Migration，添加自定义 column 或者修改默认 column 行为</title>
      <description>&lt;p&gt;最近需要自定义一些特殊字段，不想修改 migration 文件。想通过扩展&lt;code&gt;ActiveRecord::Migration&lt;/code&gt;的方式实现，添加自定义 column 或者修改默认 column 的创建行为。&lt;/p&gt;

&lt;p&gt;不知道最好的办法是什么。&lt;/p&gt;

&lt;p&gt;P.S. 之前好像在一个地方看到过关于扩展&lt;code&gt;ActiveRecord::Migration&lt;/code&gt;的文章。找了半天没有找到。&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Sat, 22 Feb 2014 16:11:59 +0800</pubDate>
      <link>https://ruby-china.org/topics/17416</link>
      <guid>https://ruby-china.org/topics/17416</guid>
    </item>
    <item>
      <title>Rails 4 中的 routes 貌似默认没有 restful 了？</title>
      <description>&lt;p&gt;这里直接用了&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# file: routes.rb
resource :users
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src="//l.ruby-china.com/photo/68d9aba89af45f85c7e4b64b18c39826.png" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;于是 edit、show 之类的 actin 就被定义到&lt;code&gt;/users?id=xx&lt;/code&gt;中了。不知为何？求解。&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Mon, 22 Jul 2013 15:45:08 +0800</pubDate>
      <link>https://ruby-china.org/topics/12675</link>
      <guid>https://ruby-china.org/topics/12675</guid>
    </item>
    <item>
      <title>为什么写 ruby 的都喜欢 Mac？？</title>
      <description>&lt;p&gt;为什么写 ruby 的都喜欢 Mac？？可以说 ruby 和 mac 一样优雅么？&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Sun, 21 Jul 2013 18:09:16 +0800</pubDate>
      <link>https://ruby-china.org/topics/12652</link>
      <guid>https://ruby-china.org/topics/12652</guid>
    </item>
    <item>
      <title>gem 包 mysql2 安装报错</title>
      <description>&lt;p&gt;系统为 OS X，rvm 安装的&lt;strong&gt;ruby1.9.3&lt;/strong&gt;。mysql 用 brew 安装的，当前版本为&lt;code&gt;5.6.12&lt;/code&gt;。安装的时候遇到老问题：&lt;/p&gt;

&lt;p&gt;mysql.h is missing.  please check your installation of mysql and try again.&lt;/p&gt;

&lt;p&gt;之前做一个软连接就可以搞定：&lt;/p&gt;

&lt;p&gt;sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib&lt;/p&gt;

&lt;p&gt;但是这次怎么都不行。大家说说问题出在哪儿了？&lt;/p&gt;

&lt;p&gt;我试着找了一下，结果明明就有这个头文件&lt;/p&gt;

&lt;p&gt;$ find /usr -name mysql.h
    /usr/local/Cellar/mysql/5.6.10/include/mysql.h
    /usr/local/Cellar/mysql/5.6.12/include/mysql.h
    /usr/local/include/mysql.h&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Thu, 11 Jul 2013 17:37:50 +0800</pubDate>
      <link>https://ruby-china.org/topics/12430</link>
      <guid>https://ruby-china.org/topics/12430</guid>
    </item>
    <item>
      <title>Rails 如何实现限定用户单点登陆，其他地方就掉线？</title>
      <description>&lt;p&gt;现在 rails 的 session 是默认存入客户端的，这样服务器就无从下手踢掉之前登陆的 session。而且我不想依赖与类似 redis 或者 memcache 之类的外部服务。
不知道还有没有什么好办法。望赐教……&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Mon, 17 Sep 2012 17:29:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/5587</link>
      <guid>https://ruby-china.org/topics/5587</guid>
    </item>
    <item>
      <title>Ruby China 用户登陆是如何实现的？</title>
      <description>&lt;p&gt;正如我们看到，Ruby China 用了 devise 来实现用户登陆等控制，可我确没有看明白怎样实现的。请大家赐教。不胜感激！&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Thu, 13 Sep 2012 17:25:26 +0800</pubDate>
      <link>https://ruby-china.org/topics/5526</link>
      <guid>https://ruby-china.org/topics/5526</guid>
    </item>
    <item>
      <title>Unicorn 无缝重启</title>
      <description>&lt;p&gt;昨天时间看了一下 Unicorn 无缝重启的资料，在这里分享一下，链接是：&lt;a href="http://www.skzsr.com/archives/unicorn/376" rel="nofollow" target="_blank"&gt;http://www.skzsr.com/archives/unicorn/376&lt;/a&gt;无缝重启&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Tue, 28 Aug 2012 09:54:12 +0800</pubDate>
      <link>https://ruby-china.org/topics/5200</link>
      <guid>https://ruby-china.org/topics/5200</guid>
    </item>
    <item>
      <title>大家是如何解决并发问题的</title>
      <description>&lt;p&gt;现在我们的 master 会启 16 个 workers。有时候会导致并发的问题，请问大家有没有解决的好办法？&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Tue, 28 Aug 2012 09:51:02 +0800</pubDate>
      <link>https://ruby-china.org/topics/5199</link>
      <guid>https://ruby-china.org/topics/5199</guid>
    </item>
    <item>
      <title>大家来讨论一下数据库迁移的最佳实践</title>
      <description>&lt;p&gt;之前接触 rails 之前还没有迁移数据库这个概念，接触之后发现确实很方便。但是有一个弊端，就是无法在 migrate 中对各个字段进行详细的描述，比如 string 类型只有一个，无法指定是 char 还是 varchar、rails 其本身不支持外键的创建（这点在&lt;a href="http://ruby-china.org/topics/3763" title=""&gt;这里&lt;/a&gt;已经说明可以用一个 gem 包实现了）等等。不知道大家对于这块地方是如何做的。可以多多讨论讨论。&lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Thu, 26 Jul 2012 15:36:46 +0800</pubDate>
      <link>https://ruby-china.org/topics/4565</link>
      <guid>https://ruby-china.org/topics/4565</guid>
    </item>
    <item>
      <title>如何使用 Capistrano 部署 rails 并且使用 remote_cache 选项？</title>
      <description>&lt;p&gt;配置了一个 gitosis 在一个服务器上面，其他的服务器拥有 ssh 的只读权限。每次部署的时候如果用默认的 checkout 都会成功。只不过每次全新的 checkout 出来太慢了，于是想用 remote_cache，但是用 remote_cache 的时候都会提示&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;fatal: Not a git repository &lt;span class="o"&gt;(&lt;/span&gt;or any of the parent directories&lt;span class="o"&gt;)&lt;/span&gt;: .git
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;不知道是我理解错误还是没有配置 OK。请教大家~谢谢了。  &lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Thu, 19 Jul 2012 19:00:53 +0800</pubDate>
      <link>https://ruby-china.org/topics/4425</link>
      <guid>https://ruby-china.org/topics/4425</guid>
    </item>
    <item>
      <title>关于服务器 unicorn worker 不断被 master kill 的问题。求思路。(已解决)</title>
      <description>&lt;p&gt;现在应用服务器是 nginx+unicorn+redis+mysql。部署之后发现 unicorn 服务器过一段时间就会被 kill 一些（unicorn 的 worker 数量为 16 个），然后 master 再吧 worker 启起来。这样的话 nginx 就会一直报 502 的错误。现在已经排除服务器、代码、nginx 的问题。unicorn 报错的日志是：&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;worker&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;8 PID:11843 &lt;span class="nb"&gt;timeout&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;31s &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; 30s&lt;span class="o"&gt;)&lt;/span&gt;, killing
reaped &lt;span class="c"&gt;#&amp;lt;Process::Status: pid=11843,signaled(SIGKILL=9)&amp;gt; worker=8&lt;/span&gt;
&lt;span class="nv"&gt;worker&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;8 ready
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;现在需要找到问题，不知道有没有 unicorn 更详细的错误日志抛出的方法。求解~！谢谢~  &lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Tue, 17 Jul 2012 15:57:16 +0800</pubDate>
      <link>https://ruby-china.org/topics/4368</link>
      <guid>https://ruby-china.org/topics/4368</guid>
    </item>
    <item>
      <title>关于类对自身静态方法的调用的问题 (已解决)</title>
      <description>&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Test&lt;/span&gt;
  &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nc"&gt;self&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;say_hi&lt;/span&gt;
    &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s1"&gt;'Hi'&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;

  &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;greeting&lt;/span&gt;
    &lt;span class="no"&gt;Test&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;say_hi&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;类似这种调用方式缺点就是假如换了类名，自身调用的地方都要跟着变，能否换成类似 PHP 中以 self 作为对象名称的方法？&lt;/p&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Test&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="k"&gt;static&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;sayHi&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"Hi"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;greeting&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;self&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="nf"&gt;sayHi&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;求教大家了~！谢谢  &lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Thu, 12 Jul 2012 14:34:19 +0800</pubDate>
      <link>https://ruby-china.org/topics/4269</link>
      <guid>https://ruby-china.org/topics/4269</guid>
    </item>
    <item>
      <title>加班中……求问一个问题 (递归效用方法，已解决)</title>
      <description>&lt;p&gt;我有一个 hash 表，结构类似这样：&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="nb"&gt;hash&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="ss"&gt;:name&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="ss"&gt;:username&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
  &lt;span class="ss"&gt;:age&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="ss"&gt;:age&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
  &lt;span class="ss"&gt;:girlfriend_count&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="ss"&gt;:girlfrend&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="ss"&gt;:count&lt;/span&gt;&lt;span class="p"&gt;]]&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;想要实现的效果是让程序执行：&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;user&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="no"&gt;User&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;find&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;data&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{}&lt;/span&gt;
&lt;span class="nb"&gt;hash&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;each&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
  &lt;span class="c1"&gt;# block&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;在 block 内实现下面功能：&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="ss"&gt;:name&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;username&lt;/span&gt;
&lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="ss"&gt;:age&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;age&lt;/span&gt;
&lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="ss"&gt;:girlfriend_count&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;girlfrend&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;count&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;不知道如何实现，eval 貌似不太优雅。求解。
谢谢大家  &lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Thu, 05 Jul 2012 21:59:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/4150</link>
      <guid>https://ruby-china.org/topics/4150</guid>
    </item>
    <item>
      <title>如何使用 rake 在创建表的时候生成外键？</title>
      <description>&lt;p&gt;如题，就是在生成数据表的时候，添加外键需要的外键。是不是只能用 excute 办到呢？这样不太有好，不知到有没有其他的办法。谢谢～！  &lt;/p&gt;</description>
      <author>siriuszhuang</author>
      <pubDate>Mon, 11 Jun 2012 23:17:10 +0800</pubDate>
      <link>https://ruby-china.org/topics/3763</link>
      <guid>https://ruby-china.org/topics/3763</guid>
    </item>
  </channel>
</rss>
