<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>rogerluo410 (roger)</title>
    <link>https://ruby-china.org/rogerluo410</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>RSpec  在 controller 测试 post get 方法 调用时， 怎么设置 headers ？？ </title>
      <description>&lt;p&gt;post ”url“, params  &lt;/p&gt;

&lt;p&gt;params 是 body 里的参数 
那么，怎么设置 header 里的参数？ &lt;/p&gt;

&lt;p&gt;例子：&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;describe&lt;/span&gt; &lt;span class="s2"&gt;"POST url"&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt;
   &lt;span class="n"&gt;let&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ss"&gt;:params&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt;
   &lt;span class="p"&gt;{&lt;/span&gt;
     &lt;span class="ss"&gt;token: &lt;/span&gt;&lt;span class="vi"&gt;@valid_token&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
     &lt;span class="ss"&gt;name: &lt;/span&gt;&lt;span class="s2"&gt;"p10"&lt;/span&gt;
   &lt;span class="p"&gt;}&lt;/span&gt;
   &lt;span class="k"&gt;end&lt;/span&gt; 
   &lt;span class="n"&gt;it&lt;/span&gt; &lt;span class="s2"&gt;"测试api"&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; 
     &lt;span class="n"&gt;post&lt;/span&gt; &lt;span class="s2"&gt;"/api/v1..."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;params&lt;/span&gt;  

     &lt;span class="n"&gt;expect&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;last_response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;status&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;to&lt;/span&gt; &lt;span class="n"&gt;eq&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;201&lt;/span&gt;&lt;span class="p"&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;</description>
      <author>rogerluo410</author>
      <pubDate>Mon, 22 Feb 2016 17:02:51 +0800</pubDate>
      <link>https://ruby-china.org/topics/29051</link>
      <guid>https://ruby-china.org/topics/29051</guid>
    </item>
    <item>
      <title>Rails 中，怎么才能删除关联对象集合时 不自动 commit ？？</title>
      <description>&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="no"&gt;Parent&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; 
&lt;span class="n"&gt;has_many&lt;/span&gt; &lt;span class="ss"&gt;:children&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;dependent: :destroy&lt;/span&gt;

&lt;span class="no"&gt;Child&lt;/span&gt;
&lt;span class="n"&gt;belongs_to&lt;/span&gt; &lt;span class="ss"&gt;:parent&lt;/span&gt;  

&lt;span class="n"&gt;new_arr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt; &lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="n"&gt;parent&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;children&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;parent&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;children&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;where&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ss"&gt;id: &lt;/span&gt;&lt;span class="n"&gt;new_arr&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;  &lt;span class="c1"&gt;#剔除掉id不等于1，3，5的元素&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;现在的问题是，在做 collection= 操作后，rails 自动 saving 且 commit 了这个事务。
但是，我希望它不 commit，并且不使用  parent.transaction do ... end 显式事务控制的代码。&lt;/p&gt;

&lt;p&gt;相关问题：
&lt;a href="http://stackoverflow.com/questions/22927284/how-to-delete-some-associations-from-an-activerecord-object-without-saving" rel="nofollow" target="_blank"&gt;http://stackoverflow.com/questions/22927284/how-to-delete-some-associations-from-an-activerecord-object-without-saving&lt;/a&gt;  ---- 这个帖子中用 reject！好像没效果
&lt;a href="https://github.com/rails/rails/issues/6994" rel="nofollow" target="_blank"&gt;https://github.com/rails/rails/issues/6994&lt;/a&gt;    --这个 issue 用 before_save 处理不知道是否可行&lt;/p&gt;

&lt;p&gt;有什么好的办法吗？ &lt;/p&gt;</description>
      <author>rogerluo410</author>
      <pubDate>Wed, 30 Dec 2015 12:43:03 +0800</pubDate>
      <link>https://ruby-china.org/topics/28568</link>
      <guid>https://ruby-china.org/topics/28568</guid>
    </item>
    <item>
      <title>Ruby 中没有 “逻辑与” 的短路原则吗？   </title>
      <description>&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="ow"&gt;not&lt;/span&gt; &lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;group_type&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;nil?&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;group_type&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;downcase&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s2"&gt;"case"&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;当第一个表达式为假时，即 group_type 为 nil 时，不会执行后面的第二个表达式。&lt;/p&gt;

&lt;p&gt;现在的情况是，group_type 为 nil 时，任然会执行后面的表达式，然后就直接抛异常了“undefined method `downcase' for nil:NilClass”  &lt;/p&gt;

&lt;p&gt;请问，ruby 中有什么简单的方式 来处理这样的逻辑吗？&lt;/p&gt;</description>
      <author>rogerluo410</author>
      <pubDate>Mon, 28 Dec 2015 21:56:13 +0800</pubDate>
      <link>https://ruby-china.org/topics/28555</link>
      <guid>https://ruby-china.org/topics/28555</guid>
    </item>
    <item>
      <title>最近 �GitHub 是怎么了， 老是连不上， 又要被墙的节奏吗</title>
      <description>&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2015/bfda07d2e2029c02e709a3374c0e38b9.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>rogerluo410</author>
      <pubDate>Thu, 24 Dec 2015 10:09:24 +0800</pubDate>
      <link>https://ruby-china.org/topics/28507</link>
      <guid>https://ruby-china.org/topics/28507</guid>
    </item>
    <item>
      <title>Ruby 的 DSL 怎么学习， 有什么资料，书籍，或项目可以推荐的吗？？</title>
      <description>&lt;p&gt;先谢谢 大婶们啊&lt;/p&gt;</description>
      <author>rogerluo410</author>
      <pubDate>Thu, 17 Dec 2015 09:21:05 +0800</pubDate>
      <link>https://ruby-china.org/topics/28429</link>
      <guid>https://ruby-china.org/topics/28429</guid>
    </item>
    <item>
      <title>Grape Get 请求有 JSON 参数，请问怎么用 CURL 去模拟测试，或者还有别的方法测试 GET API 吗？</title>
      <description>&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;params&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt;
  &lt;span class="n"&gt;requires&lt;/span&gt; &lt;span class="ss"&gt;:pa&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;type: &lt;/span&gt;&lt;span class="no"&gt;Hash&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt;
     &lt;span class="n"&gt;par1&lt;/span&gt;&lt;span class="o"&gt;...&lt;/span&gt;
     &lt;span class="n"&gt;par2&lt;/span&gt;&lt;span class="o"&gt;...&lt;/span&gt;
     &lt;span class="n"&gt;par2&lt;/span&gt;&lt;span class="o"&gt;...&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;

&lt;span class="n"&gt;get&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt;

&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;get 请求 入参是 JSON 怎么用 CURL 模拟请求。。。&lt;/p&gt;</description>
      <author>rogerluo410</author>
      <pubDate>Sun, 06 Dec 2015 02:09:30 +0800</pubDate>
      <link>https://ruby-china.org/topics/28290</link>
      <guid>https://ruby-china.org/topics/28290</guid>
    </item>
    <item>
      <title>一个关于 Module#define_method () 方法的一点疑惑</title>
      <description>&lt;p&gt;有一点疑惑，不知道有谁可以帮我解答。&lt;/p&gt;

&lt;p&gt;请看一下这个例子：&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;B&lt;/span&gt;

&lt;span class="no"&gt;B&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="no"&gt;Object&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;send&lt;/span&gt; &lt;span class="ss"&gt;:define_method&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;:n&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt;   &lt;span class="c1"&gt;#此处，为什么Object可以调用 define_method？&lt;/span&gt;
     &lt;span class="nb"&gt;p&lt;/span&gt; &lt;span class="s2"&gt;"define_method..."&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;

&lt;span class="no"&gt;B&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;n&lt;/span&gt;  &lt;span class="c1"&gt;#=&amp;gt; define_method...&lt;/span&gt;

&lt;span class="nb"&gt;p&lt;/span&gt; &lt;span class="no"&gt;Module&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;private_instance_methods&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;grep&lt;/span&gt; &lt;span class="sr"&gt;/^define_method/&lt;/span&gt;  &lt;span class="c1"&gt;#=&amp;gt; [:define_method]&lt;/span&gt;
&lt;span class="nb"&gt;p&lt;/span&gt; &lt;span class="no"&gt;Object&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;private_instance_methods&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;grep&lt;/span&gt; &lt;span class="sr"&gt;/^define_method/&lt;/span&gt;
&lt;span class="nb"&gt;p&lt;/span&gt; &lt;span class="no"&gt;Kernel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;private_instance_methods&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;grep&lt;/span&gt; &lt;span class="sr"&gt;/^define_method/&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;define_method 是 Module 中的一个私有方法，Object 是 Module 的一个超类，根据 ruby 的 ancestor 链，方法是从下往上查找，
1.为什么 Object 类可以使用它下层类的方法？？
2.还有一个问题是，define_method 是 Module 中的一个私有方法，那么下层继承的类是怎么可以使用这个私有方法的？&lt;/p&gt;</description>
      <author>rogerluo410</author>
      <pubDate>Mon, 30 Mar 2015 21:40:43 +0800</pubDate>
      <link>https://ruby-china.org/topics/24917</link>
      <guid>https://ruby-china.org/topics/24917</guid>
    </item>
  </channel>
</rss>
