<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>rdongxie (rdongxie)</title>
    <link>https://ruby-china.org/rdongxie</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>carrierwave 的 filename 问题</title>
      <description>&lt;p&gt;在 uploader 中定义 filename
参考： &lt;a href="http://huacnlee.com/blog/carrierwave-upload-store-file-name-config/" rel="nofollow" target="_blank"&gt;http://huacnlee.com/blog/carrierwave-upload-store-file-name-config/&lt;/a&gt;&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;filename&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="k"&gt;super&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;present?&lt;/span&gt;
      &lt;span class="vi"&gt;@name&lt;/span&gt; &lt;span class="o"&gt;||=&lt;/span&gt; &lt;span class="no"&gt;Digest&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;MD5&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;hexdigest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;current_path&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
      &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="vi"&gt;@name&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;.&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;extension&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&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;创建一个 model 里面包含一个 avatar 文件属性会创建多个文件&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;rw&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt; &lt;span class="mi"&gt;13642&lt;/span&gt; &lt;span class="no"&gt;Jun&lt;/span&gt; &lt;span class="mi"&gt;28&lt;/span&gt; &lt;span class="mo"&gt;00&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;46&lt;/span&gt; &lt;span class="mi"&gt;70&lt;/span&gt;&lt;span class="n"&gt;cf50e3bc627361d14011ac7e0020f4&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;png&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;rw&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt; &lt;span class="mi"&gt;10933&lt;/span&gt; &lt;span class="no"&gt;Jun&lt;/span&gt; &lt;span class="mi"&gt;28&lt;/span&gt; &lt;span class="mo"&gt;00&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;46&lt;/span&gt; &lt;span class="n"&gt;big_bb4048b3fc05ca7c31517d264cd97ed5&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;png&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;rw&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt;  &lt;span class="mi"&gt;8416&lt;/span&gt; &lt;span class="no"&gt;Jun&lt;/span&gt; &lt;span class="mi"&gt;28&lt;/span&gt; &lt;span class="mo"&gt;00&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;46&lt;/span&gt; &lt;span class="n"&gt;large_d2f5fda456aabef613ad0ec3ab9c7ae1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;png&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;rw&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt;  &lt;span class="mi"&gt;3213&lt;/span&gt; &lt;span class="no"&gt;Jun&lt;/span&gt; &lt;span class="mi"&gt;28&lt;/span&gt; &lt;span class="mo"&gt;00&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;46&lt;/span&gt; &lt;span class="n"&gt;normal_35702a3ee884fb3f319bb0e0a3a1980b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;png&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;rw&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt; &lt;span class="n"&gt;red&lt;/span&gt;   &lt;span class="mi"&gt;918&lt;/span&gt; &lt;span class="no"&gt;Jun&lt;/span&gt; &lt;span class="mi"&gt;28&lt;/span&gt; &lt;span class="mo"&gt;00&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;46&lt;/span&gt; &lt;span class="n"&gt;small_20056cd594137790f249b6b89b8b9c58&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;png&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;查看数据库发现 avatar 的值是：&lt;code&gt;70cf50e3bc627361d14011ac7e0020f4.png&lt;/code&gt;
显示这张图片的时候使用&lt;code&gt;model.avatar.url(:large)&lt;/code&gt;，结果 image 的 url 为&lt;code&gt;large_70cf50e3bc627361d14011ac7e0020f4.png&lt;/code&gt;，但是并没有生成这个文件
之前生成了&lt;code&gt;large_d2f5fda456aabef613ad0ec3ab9c7ae1.png&lt;/code&gt;这个文件。所以显示失败了，&lt;/p&gt;

&lt;p&gt;会产生这种情况呢？&lt;/p&gt;</description>
      <author>rdongxie</author>
      <pubDate>Tue, 28 Jun 2016 15:52:22 +0800</pubDate>
      <link>https://ruby-china.org/topics/30389</link>
      <guid>https://ruby-china.org/topics/30389</guid>
    </item>
    <item>
      <title>Rails 是如何判断 relative reference 和 qualified reference</title>
      <description>&lt;p&gt;rails 是如何判断 relative reference 和 qualified reference？&lt;/p&gt;</description>
      <author>rdongxie</author>
      <pubDate>Sat, 25 Jun 2016 12:27:46 +0800</pubDate>
      <link>https://ruby-china.org/topics/30366</link>
      <guid>https://ruby-china.org/topics/30366</guid>
    </item>
    <item>
      <title>为什么 ruby-china 在 config/application.rb 中写 require 'markdown'?</title>
      <description>&lt;p&gt;为什么 ruby-china 在 config/application.rb 中写 require 'markdown'?
不是已经把 lib 加入到 autoload_paths 中了吗？&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;config&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;autoload_paths&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;push&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="sx"&gt;%W(&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;config&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;root&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sx"&gt;/lib)&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;config&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;eager_load_paths&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;push&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="sx"&gt;%W(&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;config&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;root&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sx"&gt;/lib/exception_notifier)&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>rdongxie</author>
      <pubDate>Fri, 24 Jun 2016 09:33:02 +0800</pubDate>
      <link>https://ruby-china.org/topics/30356</link>
      <guid>https://ruby-china.org/topics/30356</guid>
    </item>
    <item>
      <title>如何访问 @c</title>
      <description>&lt;p&gt;在 self.extended 中初始化一个&lt;a href="/c" class="user-mention" title="@c"&gt;&lt;i&gt;@&lt;/i&gt;c&lt;/a&gt;，如何访问呢？
代码如下：&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;ParentModule&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;extended&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;base&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s1"&gt;'i am a parent module.'&lt;/span&gt;
    &lt;span class="vi"&gt;@c&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;'i am c from parent module.'&lt;/span&gt;
    &lt;span class="n"&gt;base&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;class_eval&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt;
      &lt;span class="vi"&gt;@a&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"i am a from parent module."&lt;/span&gt;
    &lt;span class="k"&gt;end&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;c&lt;/span&gt;
    &lt;span class="vi"&gt;@c&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;a&lt;/span&gt;
    &lt;span class="vi"&gt;@a&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;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="vg"&gt;$LOAD_PATH&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;unshift&lt;/span&gt; &lt;span class="no"&gt;File&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;join&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="no"&gt;File&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;dirname&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kp"&gt;__FILE__&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="sx"&gt;%w( . )&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nb"&gt;require&lt;/span&gt; &lt;span class="s1"&gt;'exaa'&lt;/span&gt;
&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;SonClass&lt;/span&gt;
  &lt;span class="kp"&gt;extend&lt;/span&gt; &lt;span class="no"&gt;ParentModule&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="n"&gt;s&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="no"&gt;SonClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;new&lt;/span&gt;
&lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="no"&gt;SonClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;class_variables&lt;/span&gt;
&lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="no"&gt;SonClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;c&lt;/span&gt; &lt;span class="c1"&gt;#这样访问不了。&lt;/span&gt;
&lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="no"&gt;SonClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;a&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>rdongxie</author>
      <pubDate>Thu, 02 Jun 2016 11:27:47 +0800</pubDate>
      <link>https://ruby-china.org/topics/30192</link>
      <guid>https://ruby-china.org/topics/30192</guid>
    </item>
    <item>
      <title>Ruby China 中收藏功能没有存在 redis 中么</title>
      <description>&lt;p&gt;&lt;a href="/huachlee" class="user-mention" title="@huachlee"&gt;&lt;i&gt;@&lt;/i&gt;huachlee&lt;/a&gt; RubyChina 中收藏功能没有存在 redis 中么？&lt;/p&gt;</description>
      <author>rdongxie</author>
      <pubDate>Fri, 14 Nov 2014 17:38:57 +0800</pubDate>
      <link>https://ruby-china.org/topics/22691</link>
      <guid>https://ruby-china.org/topics/22691</guid>
    </item>
    <item>
      <title>Rails 4 escape html 代码段</title>
      <description>&lt;p&gt;有一个 Model，有 2 个字段，一个字段内容是包含 html 代码，传递到 view 全部被转义了。
&lt;a href="/student.body" class="user-mention" title="@student.body"&gt;&lt;i&gt;@&lt;/i&gt;student.body&lt;/a&gt;= "&lt;/p&gt;&lt;p&gt;123443215&lt;/p&gt;&lt;p&gt;"在页面上显示为：&lt;/p&gt;&lt;p&gt;123443215&lt;/p&gt;&lt;p&gt;，如何显示为：123443215?&lt;/p&gt;</description>
      <author>rdongxie</author>
      <pubDate>Fri, 31 Oct 2014 16:56:02 +0800</pubDate>
      <link>https://ruby-china.org/topics/22383</link>
      <guid>https://ruby-china.org/topics/22383</guid>
    </item>
    <item>
      <title>ruby-china 代码 controller 里面 action 为什么都没有 respond_to</title>
      <description>&lt;p&gt;ruby-china 代码 controller 里面 action 为什么都没有 respond_to，而我用 scaffold 生成里面有。ruby-china 做了特殊处理？&lt;/p&gt;</description>
      <author>rdongxie</author>
      <pubDate>Thu, 30 Oct 2014 15:28:46 +0800</pubDate>
      <link>https://ruby-china.org/topics/22353</link>
      <guid>https://ruby-china.org/topics/22353</guid>
    </item>
  </channel>
</rss>
