<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>wym205 (Kuziki)</title>
    <link>https://ruby-china.org/wym205</link>
    <description>玩几年客户端去</description>
    <language>en-us</language>
    <item>
      <title>升级 rails4 碰到的问题 (STI)</title>
      <description>&lt;p&gt;最近尝试把公司的项目升级到 rails 4 去，结果就各种蛋疼了
  有一张 STI 表上的的错误不知道怎么办了，求各路大神指点啊
  目录结构&lt;/p&gt;

&lt;p&gt;+-- Models
|---+-- gacha.rb
|---+-- gacha
|------+-- a.rb
|------+-- a
|----------+-- b.rb
|----------+-- b
|--------------+-- d.rb
|----------+-- c.rb
|----------+-- c
|--------------+-- d.rb
|----------+-- d.rb&lt;/p&gt;

&lt;p&gt;gacha.rb&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Gacha&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="no"&gt;ActiveRecord&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;Base&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;a.rb&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Gacha::A&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="no"&gt;Gacha&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;b.rb&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Gacha::A::B&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="no"&gt;Gacha&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;A&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;b/d.rb&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Gacha::A::B::D&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="no"&gt;Gacha&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;A&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;B&lt;/span&gt;
   &lt;span class="kp"&gt;include&lt;/span&gt; &lt;span class="no"&gt;Gacha&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;A&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;D&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;c.rb&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Gacha::A::C&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="no"&gt;Gacha&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;A&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;c/d.rb&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Gacha::A::C::D&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="no"&gt;Gacha&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;A&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;C&lt;/span&gt;
   &lt;span class="kp"&gt;include&lt;/span&gt; &lt;span class="no"&gt;Gacha&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;A&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;D&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;d.rb&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;module&lt;/span&gt; &lt;span class="nn"&gt;Gacha::A::D&lt;/span&gt;
   &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;is_d?&lt;/span&gt;
       &lt;span class="kp"&gt;true&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;上面的代码在 3.2.16 里面还没事，一升级到 4 就报错了：Gacha::A::B::D 和 Gacha::A::C::D 只能认识一个，第二个就会报
&lt;code&gt;NoMethodError: undefined method ‘decorate_columns' for Gacha::A::D:Module&lt;/code&gt;
也就是说第二个变成了 Module 而不是正常的 Gacha 类，试了一下把 Module 的名称换一下就没事 (Gacha::A::D =&amp;gt; Gacha::A::X 之类的，不和 b/d.rb，c/d.rb 中的 D 重名就没事)，不过总归是不爽，有什么彻底的解决方法吗？&lt;/p&gt;</description>
      <author>wym205</author>
      <pubDate>Tue, 11 Mar 2014 15:55:14 +0800</pubDate>
      <link>https://ruby-china.org/topics/17803</link>
      <guid>https://ruby-china.org/topics/17803</guid>
    </item>
    <item>
      <title>APNS 的 push 通知的错误</title>
      <description>&lt;p&gt;项目里面使用的 apns 的 gem 用来发 ios 的 push 通知，之前都没什么问题，就最近老是报    &lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="no"&gt;OpenSSL&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;SSL&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;SSLError&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;SSL_connect&lt;/span&gt; &lt;span class="no"&gt;SYSCALL&lt;/span&gt; &lt;span class="n"&gt;returned&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt; &lt;span class="n"&gt;errno&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="n"&gt;state&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="no"&gt;SSLv3&lt;/span&gt; &lt;span class="n"&gt;read&lt;/span&gt; &lt;span class="n"&gt;finished&lt;/span&gt; &lt;span class="no"&gt;A&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="no"&gt;OpenSSL&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;SSL&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;SSLError&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;SSL_connect&lt;/span&gt; &lt;span class="no"&gt;SYSCALL&lt;/span&gt; &lt;span class="n"&gt;returned&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt; &lt;span class="n"&gt;errno&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="n"&gt;state&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="no"&gt;SSLv2&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;v3&lt;/span&gt; &lt;span class="n"&gt;read&lt;/span&gt; &lt;span class="n"&gt;server&lt;/span&gt; &lt;span class="n"&gt;hello&lt;/span&gt; &lt;span class="no"&gt;A&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;，网上查了下有说是 ssl 超时，也有说是 pem 证书出问题了，，但也不是每次都出错
哪位大神有解决这方面问题的经验吗？&lt;/p&gt;</description>
      <author>wym205</author>
      <pubDate>Tue, 24 Sep 2013 15:42:04 +0800</pubDate>
      <link>https://ruby-china.org/topics/14355</link>
      <guid>https://ruby-china.org/topics/14355</guid>
    </item>
    <item>
      <title>attribute? 方法的返回值问题</title>
      <description>&lt;p&gt;class User &amp;lt; ActiveRecord::Base
       attr_accessible :age
    end
    user = User.new
    user.id = 0
    user.id? #false
    user.age = 0
    user.age? #false&lt;/p&gt;

&lt;p&gt;很奇怪上面那段代码中的两个 false 的返回值，!!0 为什么不是 true 呢&lt;/p&gt;</description>
      <author>wym205</author>
      <pubDate>Wed, 28 Aug 2013 15:34:57 +0800</pubDate>
      <link>https://ruby-china.org/topics/13696</link>
      <guid>https://ruby-china.org/topics/13696</guid>
    </item>
  </channel>
</rss>
