<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>dxwts (dxwts)</title>
    <link>https://ruby-china.org/dxwts</link>
    <description>嘿嘿</description>
    <language>en-us</language>
    <item>
      <title>请教各位客户的内网服务器要如何管理</title>
      <description>&lt;p&gt;我们现在面对多个使用自己内网服务器进行应用部署的客户，应用使用 docker 打包了，客户直接通过脚本就能部署，但是我这边需要统一管理，方便更新容器，客户服务器可以访问外网，我想过配置 ssh 反向隧道，不过不知道如何保证隧道稳定，也试了 ngrok，很方便但有进程限制，另外还找到一个项目 localtunnel(&lt;a href="https://github.com/localtunnel/localtunnel" rel="nofollow" target="_blank"&gt;https://github.com/localtunnel/localtunnel&lt;/a&gt;),  ssh 的端口没有配置成功，然后我想用 localtunnel+web-terminal，不过还是需要写一个应用进行集成部署到客户机器上，请教各位有没有其他的办法？&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Thu, 24 Aug 2017 12:00:00 +0800</pubDate>
      <link>https://ruby-china.org/topics/33919</link>
      <guid>https://ruby-china.org/topics/33919</guid>
    </item>
    <item>
      <title>[广州] 文石 招聘 Ruby 工程师</title>
      <description>&lt;h2 id="公司介绍"&gt;公司介绍&lt;/h2&gt;
&lt;p&gt;融捷文石公司，由融捷投资控股集团与原广州文石信息科技联合成立的面向教育行业的新公司，融捷文石目前主要产品以电子书包以及配套的应用软件和相关服务为主。公司研发核心全员持股制，未来步向上市为目标而奋斗。目前公司正在大力开拓各地教育市场，诚邀各位高手加入。&lt;/p&gt;
&lt;h2 id="岗位要求"&gt;岗位要求&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;两年以上 Rails 实际项目经验&lt;/li&gt;
&lt;li&gt;完成后端接口的定制与开发&lt;/li&gt;
&lt;li&gt;有良好的编码习惯，整洁清晰、可复用&lt;/li&gt;
&lt;li&gt;熟悉 PostgreSQL/MySQL/Redis/MongoDB/Linux/Git（多选）&lt;/li&gt;
&lt;li&gt;Apache 或 Nginx 服务器运维经验&lt;/li&gt;
&lt;li&gt;熟悉 js，有前端经验者优先&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="薪资待遇"&gt;薪资待遇&lt;/h2&gt;
&lt;p&gt;请在简历注明你的期望待遇，也可面谈&lt;/p&gt;
&lt;h2 id="联系我们"&gt;联系我们&lt;/h2&gt;
&lt;p&gt;邮箱：jobs@onyx-international.com&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Tue, 28 Jun 2016 14:25:19 +0800</pubDate>
      <link>https://ruby-china.org/topics/30387</link>
      <guid>https://ruby-china.org/topics/30387</guid>
    </item>
    <item>
      <title>请问 mongoid has_many 带上 scope 要怎么写 </title>
      <description>&lt;p&gt;sqlite 好像可以按下面的方法写，但我用了 mongoid 这样写却不行。&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;has_many&lt;/span&gt; &lt;span class="ss"&gt;:comments&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="n"&gt;order&lt;/span&gt; &lt;span class="s2"&gt;"posted_on"&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;:comments&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="n"&gt;includes&lt;/span&gt; &lt;span class="ss"&gt;:author&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;:people&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="n"&gt;where&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"deleted = 0"&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;order&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="ss"&gt;class_name: &lt;/span&gt;&lt;span class="s2"&gt;"Person"&lt;/span&gt;
&lt;span class="n"&gt;has_many&lt;/span&gt; &lt;span class="ss"&gt;:tracks&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="n"&gt;order&lt;/span&gt; &lt;span class="s2"&gt;"position"&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="ss"&gt;dependent: :destroy&lt;/span&gt;
&lt;span class="n"&gt;has_many&lt;/span&gt; &lt;span class="ss"&gt;:reports&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="n"&gt;readonly&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>dxwts</author>
      <pubDate>Fri, 12 Dec 2014 17:16:19 +0800</pubDate>
      <link>https://ruby-china.org/topics/23163</link>
      <guid>https://ruby-china.org/topics/23163</guid>
    </item>
    <item>
      <title>有这样一个需求不知到怎么办？请各位指点</title>
      <description>&lt;p&gt;我做了一个公司内部使用的系统，用了 devise 做用户模块，因为人员都是使用公司邮箱所以导致有的对外人员的变更，不能使用新的邮箱必须沿用旧的，之前每次人员变更都是提供新的邮箱的，没有考虑到这种情况，之前所有发布的消息显示人员的信息都是直接去 user 表取的，所以现在新人如果更改名字就会导致之前所有的记录发生改变，要怎么做能用同一个邮箱注册多个帐号呢？&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Fri, 15 Aug 2014 18:02:19 +0800</pubDate>
      <link>https://ruby-china.org/topics/21045</link>
      <guid>https://ruby-china.org/topics/21045</guid>
    </item>
    <item>
      <title>ActionController::UnknownFormat 的问题无法解决</title>
      <description>&lt;p&gt;这个问题不知道该怎么办，求指导
用 devise 做用户管理，但我需要管理员可以改用户资料，所以加了个 people 的 controler，加了个 edit 的界面，在 edit 界面里 form 是&lt;/p&gt;
&lt;pre class="highlight erb"&gt;&lt;code&gt;&lt;span class="cp"&gt;&amp;lt;%=&lt;/span&gt; &lt;span class="n"&gt;form_for&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="vi"&gt;@people&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;url: &lt;/span&gt;&lt;span class="n"&gt;update_people_path&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="vi"&gt;@people&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;:format&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="ss"&gt;:html&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="ss"&gt;html: &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="ss"&gt;method: :patch&lt;/span&gt; &lt;span class="p"&gt;})&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;f&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="cp"&gt;%&amp;gt;&lt;/span&gt; 

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;routers 里&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;patch&lt;/span&gt; &lt;span class="s2"&gt;"update_people"&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="s2"&gt;"peoples#update_people"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;as: &lt;/span&gt;&lt;span class="s2"&gt;"update_people"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;defaults: &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="ss"&gt;format: &lt;/span&gt;&lt;span class="s1"&gt;'html'&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;controller&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;update_people&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="n"&gt;request&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;format&lt;/span&gt;
  &lt;span class="vi"&gt;@people&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="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;params&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="ss"&gt;:user&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="ss"&gt;:id&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;
  &lt;span class="n"&gt;respond_to&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nb"&gt;format&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="vi"&gt;@people.update&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;user_params&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
      &lt;span class="nb"&gt;format&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;html&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="n"&gt;redirect_to&lt;/span&gt; &lt;span class="n"&gt;peoples_path&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;notice: &lt;/span&gt;&lt;span class="s1"&gt;'Produce was successfully updated.'&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;span class="k"&gt;end&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;总是在    respond_to do |format|报 ActionController::UnknownFormat，我在 form 和 routes 里指定了 format 也不管用，不知道为什么？
rails4.0&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Fri, 16 May 2014 16:26:31 +0800</pubDate>
      <link>https://ruby-china.org/topics/19305</link>
      <guid>https://ruby-china.org/topics/19305</guid>
    </item>
    <item>
      <title>rails 的 lib 数据库查询问题</title>
      <description>&lt;p&gt;请问我在 lib 里查询数据库却什么都没查到是什么问题，我在同步一个 sql server 的数据库，本地是 mongo，下面的代码在查到本地已插过的数据进行更新操作，可是查出来的&lt;a href="/data" class="user-mention" title="@data"&gt;&lt;i&gt;@&lt;/i&gt;data&lt;/a&gt;我不知到是什么东西，打印&lt;a href="/data.class" class="user-mention" title="@data.class"&gt;&lt;i&gt;@&lt;/i&gt;data.class&lt;/a&gt;什么也没有打出来，插入是没有问题的，能跳到 update 分支，不过 undefined method `update' for nil:NilClass data 好像是 nil&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;sync&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;table&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="c1"&gt;# "Materiale::#{table}".constantize.destroy_all&lt;/span&gt;
    &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="vi"&gt;@client.execute&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"select &lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="vi"&gt;@TABLES&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;table&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="s1"&gt;'attributes'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt; from &lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;table&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;upcase&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

    &lt;span class="n"&gt;p_key&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{}&lt;/span&gt;

    &lt;span class="n"&gt;result&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;row&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
      &lt;span class="vi"&gt;@TABLES&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;table&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="s1"&gt;'key'&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="o"&gt;|&lt;/span&gt;
        &lt;span class="n"&gt;p_key&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;row&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
      &lt;span class="k"&gt;end&lt;/span&gt;

      &lt;span class="vi"&gt;@data&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"Materiale::&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;table&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;constantize&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="n"&gt;p_key&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;first&lt;/span&gt;

      &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="vi"&gt;@data.blank&lt;/span&gt;&lt;span class="p"&gt;?&lt;/span&gt;
        &lt;span class="n"&gt;insert&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;table&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;row&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
      &lt;span class="k"&gt;else&lt;/span&gt;
        &lt;span class="n"&gt;update&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="vi"&gt;@data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;row&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;span class="k"&gt;end&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;insert&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;table&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;row&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="vi"&gt;@data&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"Materiale::&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;table&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;constantize&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;new&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;row&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="vi"&gt;@TABLES&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;table&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="s1"&gt;'depend'&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;depend&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
      &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="vi"&gt;@data&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="n"&gt;depend&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'key'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;nil?&lt;/span&gt;
        &lt;span class="vi"&gt;@depend&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"Materiale::&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;depend&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'table'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;constantize&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="n"&gt;depend&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'key'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="vi"&gt;@data&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="n"&gt;depend&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'key'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="p"&gt;]).&lt;/span&gt;&lt;span class="nf"&gt;first&lt;/span&gt;
        &lt;span class="vi"&gt;@data&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="n"&gt;depend&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'table'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;downcase&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;_id"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="vi"&gt;@depend.id&lt;/span&gt;
      &lt;span class="k"&gt;end&lt;/span&gt;
    &lt;span class="k"&gt;end&lt;/span&gt;

    &lt;span class="vi"&gt;@data.save&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;update&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;row&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"update  data"&lt;/span&gt;
    &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;update&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;row&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>dxwts</author>
      <pubDate>Thu, 20 Mar 2014 16:37:11 +0800</pubDate>
      <link>https://ruby-china.org/topics/18043</link>
      <guid>https://ruby-china.org/topics/18043</guid>
    </item>
    <item>
      <title>model 下有多级目录 model 的关系要如何写</title>
      <description>&lt;p&gt;请问各位，我的 model 目录里有多级目录比如
models/materiale/oitm.rb
models/materiale/ocrd.rb&lt;/p&gt;

&lt;p&gt;我需要
ocrd has_many :oitms
这个需要怎么写？我按平常的写法保存数据时报错了 uninitialized constant Oitm&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Thu, 20 Mar 2014 12:34:58 +0800</pubDate>
      <link>https://ruby-china.org/topics/18035</link>
      <guid>https://ruby-china.org/topics/18035</guid>
    </item>
    <item>
      <title>数据被依赖的话不能删除这个要怎么写</title>
      <description>&lt;p&gt;mongoid 中 has_many 的关系，如果 child 有 parent 那么 child 就不能直接删除，这个要怎么写？
我想到的是在 child 中使用 before_destroy 检查 child.parent?，然后再进行删除，有没有类似在 parent 中使用的：dependent =&amp;gt; :destroy 约束选项&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Thu, 16 Jan 2014 17:45:34 +0800</pubDate>
      <link>https://ruby-china.org/topics/16835</link>
      <guid>https://ruby-china.org/topics/16835</guid>
    </item>
    <item>
      <title>两个应用可以用一个用户系统吗？</title>
      <description>&lt;p&gt;请教各位，我有两个应用，用 devise 做用户系统，可不可以两个应用只用一个用户系统，或者两个 user 表做同步，mongodb+mongoid，这个要如何做？&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Mon, 13 Jan 2014 15:07:11 +0800</pubDate>
      <link>https://ruby-china.org/topics/16762</link>
      <guid>https://ruby-china.org/topics/16762</guid>
    </item>
    <item>
      <title>sunspot + mongoid 搜不到结果</title>
      <description>&lt;p&gt;请教各位如题
gem 用
gem 'sunspot_rails'
gem 'sunspot_mongoid'
按 github 上文档添加的
中途执行 rake sunspot:reindex 遇到错误 undefined method `find_in_batches'
后来根据网上的资料改成 rake sunspot:reindex[false] 可以了不过不知到是否可以这样试过之后没错，但搜不到结果，就换了个 sunspot_mongoid 现在用&lt;a href="https://github.com/kristianmandrup/sunspot_mongoid" rel="nofollow" target="_blank"&gt;https://github.com/kristianmandrup/sunspot_mongoid&lt;/a&gt;运行没有报错可还是一直搜不到结果，大概是什么原因？&lt;/p&gt;

&lt;p&gt;实际我搜的东西不多，开始我用 mongoid_search（&lt;a href="https://github.com/mauriciozaffari/mongoid_searchsunspot" rel="nofollow" target="_blank"&gt;https://github.com/mauriciozaffari/mongoid_searchsunspot&lt;/a&gt;）也搜不到结果才换的&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Sat, 04 Jan 2014 16:34:38 +0800</pubDate>
      <link>https://ruby-china.org/topics/16619</link>
      <guid>https://ruby-china.org/topics/16619</guid>
    </item>
    <item>
      <title>导入 csv 出错 invalid byte sequence in utf-8</title>
      <description>&lt;p&gt;请教各位，导入 csv 出错 invalid byte sequence in utf-8，文件是用 office2010 转的，用 force_encoding 转成其他编码可以导入但是乱码，这个要怎么处理啊？&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Mon, 30 Dec 2013 10:19:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/16504</link>
      <guid>https://ruby-china.org/topics/16504</guid>
    </item>
    <item>
      <title>关于 ruby 的变量问题</title>
      <description>&lt;p&gt;请教，代码如下，我需要记录 product 表的字段变更历史，就用了 mongoid 提供的 after_update 方法，但是在保存前取到的 self 的字段都是更新过的，没办法就添加了 set_old_product 的方法，在 controller 里设置，在 set_old_product 里打印的值还是变更前的没问题，可执行到 after_update 时就&lt;a href="/old_product" class="user-mention" title="@old_product"&gt;&lt;i&gt;@&lt;/i&gt;old_product&lt;/a&gt;就变成变更后的了，set_old_product 这个方法只被调用了一次，是不是我的变量使用方法不对？感觉&lt;a href="/old_product" class="user-mention" title="@old_product"&gt;&lt;i&gt;@&lt;/i&gt;old_product&lt;/a&gt;只是存了 product 的指针一样&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;Product&lt;/span&gt;
  &lt;span class="kp"&gt;include&lt;/span&gt; &lt;span class="no"&gt;Mongoid&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;Document&lt;/span&gt;
  &lt;span class="kp"&gt;include&lt;/span&gt; &lt;span class="no"&gt;Mongoid&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;Timestamps&lt;/span&gt;

  &lt;span class="n"&gt;field&lt;/span&gt; &lt;span class="ss"&gt;:name&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;String&lt;/span&gt;
  &lt;span class="n"&gt;field&lt;/span&gt; &lt;span class="ss"&gt;:state&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;String&lt;/span&gt;

&lt;span class="n"&gt;has_many&lt;/span&gt; &lt;span class="ss"&gt;:product_events&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;:after_add&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="ss"&gt;:after_add_handler&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;  &lt;span class="ss"&gt;:dependent&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="ss"&gt;:destroy&lt;/span&gt;

&lt;span class="n"&gt;after_update&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;product&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
      &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"=============== &lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="vi"&gt;@old_product.state&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;product&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;state&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="c1"&gt;#到这里前后两个值就变成一样了&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;set_old_product&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;product&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="vi"&gt;@old_product&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;product&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;attributes&lt;/span&gt;
     &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"=============== &lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="vi"&gt;@old_product.state&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;  &lt;span class="c1"&gt;#这里打印的值还是对的&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;create_events&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;/code&gt;&lt;/pre&gt;</description>
      <author>dxwts</author>
      <pubDate>Thu, 26 Dec 2013 10:04:33 +0800</pubDate>
      <link>https://ruby-china.org/topics/16427</link>
      <guid>https://ruby-china.org/topics/16427</guid>
    </item>
    <item>
      <title>carrierwave 上传头像后生产模式下取不到</title>
      <description>&lt;p&gt;请问各位，我用 carrierwave 上传头像，在的 development 模式下可以正常使用，切到 production 后上传图片就取不到了，图片有正常上传，这个大概是什么问题引起。&lt;/p&gt;

&lt;p&gt;ActionController::RoutingError (No route matches [GET] "/uploads/user/avatar/52b26abf6478775812000000/big_avatar/52b26abf6478775812000000.jpg"):
  actionpack (4.0.0) lib/action_dispatch/middleware/debug_exceptions.rb:21:in &lt;code&gt;call'
  actionpack (4.0.0) lib/action_dispatch/middleware/show_exceptions.rb:30:in&lt;/code&gt;call'
  railties (4.0.0) lib/rails/rack/logger.rb:38:in &lt;code&gt;call_app'
  railties (4.0.0) lib/rails/rack/logger.rb:21:in&lt;/code&gt;block in call'
  activesupport (4.0.0) lib/active_support/tagged_logging.rb:67:in &lt;code&gt;block in tagged'
  activesupport (4.0.0) lib/active_support/tagged_logging.rb:25:in&lt;/code&gt;tagged'
  activesupport (4.0.0) lib/active_support/tagged_logging.rb:67:in &lt;code&gt;tagged'
  railties (4.0.0) lib/rails/rack/logger.rb:21:in&lt;/code&gt;call'
  actionpack (4.0.0) lib/action_dispatch/middleware/request_id.rb:21:in &lt;code&gt;call'
  rack (1.5.2) lib/rack/methodoverride.rb:21:in&lt;/code&gt;call'
  rack (1.5.2) lib/rack/runtime.rb:17:in &lt;code&gt;call'
  activesupport (4.0.0) lib/active_support/cache/strategy/local_cache.rb:83:in&lt;/code&gt;call'
  railties (4.0.0) lib/rails/engine.rb:511:in &lt;code&gt;call'
  railties (4.0.0) lib/rails/application.rb:97:in&lt;/code&gt;call'
  rack (1.5.2) lib/rack/lock.rb:17:in &lt;code&gt;call'
  rack (1.5.2) lib/rack/content_length.rb:14:in&lt;/code&gt;call'
  rack (1.5.2) lib/rack/handler/webrick.rb:60:in &lt;code&gt;service'
  /home/dxw/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/webrick/httpserver.rb:138:in&lt;/code&gt;service'
  /home/dxw/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/webrick/httpserver.rb:94:in &lt;code&gt;run'
  /home/dxw/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/webrick/server.rb:295:in&lt;/code&gt;block in start_thread'&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Thu, 19 Dec 2013 12:04:25 +0800</pubDate>
      <link>https://ruby-china.org/topics/16307</link>
      <guid>https://ruby-china.org/topics/16307</guid>
    </item>
    <item>
      <title>devise 如何把资料和密码更新，改成两个页面</title>
      <description>&lt;p&gt;如标题，我想把资料修改和密码修改用两个页面来做，google 了很久也不知道怎么办。求教各位。&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Wed, 18 Dec 2013 12:17:29 +0800</pubDate>
      <link>https://ruby-china.org/topics/16273</link>
      <guid>https://ruby-china.org/topics/16273</guid>
    </item>
    <item>
      <title>数据库表关系问题</title>
      <description>&lt;p&gt;各位有两个表的关系我不清楚怎么整理好，麻烦各位帮忙看看。原本我有 product 的表，需要添加供应商和价格信息，所以我打算添加供应商的表，问题是 product 对应多个 manufacture，manufacture 对应多个 product，因为各个 manufature 提供的价格会不一样，所以 product 对应多种价格。原本我想把 price 分离出来单独建一个表，不过我都不知道为什么想这么干，这里怎么处理好？&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Mon, 09 Dec 2013 10:58:16 +0800</pubDate>
      <link>https://ruby-china.org/topics/16084</link>
      <guid>https://ruby-china.org/topics/16084</guid>
    </item>
    <item>
      <title>mongoid 如何把一个 field 置为空</title>
      <description>&lt;p&gt;我使用 mongoid 时，有个 type 为 string 的字段设置值后要更新为空，可是怎么操作都是前一次设置的值，这是为什么啊？&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Mon, 02 Dec 2013 20:58:53 +0800</pubDate>
      <link>https://ruby-china.org/topics/15948</link>
      <guid>https://ruby-china.org/topics/15948</guid>
    </item>
    <item>
      <title>ruby 2.0 rails 4.0 使用 mongoid 出错</title>
      <description>&lt;p&gt;请问各位，我在使用 mongoid 时总是报下面的错，是什么原因，怎么解决？谢谢
cannot load such file -- active_resource/railtie (LoadError)&lt;/p&gt;

&lt;p&gt;已经按官网文档上进行了配置，生成
rails new app_name --skip-active-record&lt;/p&gt;

&lt;p&gt;改了 application.rb&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="c1"&gt;# require 'rails/all'&lt;/span&gt;
&lt;span class="nb"&gt;require&lt;/span&gt; &lt;span class="s2"&gt;"action_controller/railtie"&lt;/span&gt;
&lt;span class="nb"&gt;require&lt;/span&gt; &lt;span class="s2"&gt;"action_mailer/railtie"&lt;/span&gt; 
&lt;span class="nb"&gt;require&lt;/span&gt; &lt;span class="s2"&gt;"active_resource/railtie"&lt;/span&gt;
&lt;span class="nb"&gt;require&lt;/span&gt; &lt;span class="s2"&gt;"rails/test_unit/railtie"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;删除 database.yml
添加 Mongoid.load!(Rails.root.to_s+"/config/mongoid.yml")&lt;/p&gt;</description>
      <author>dxwts</author>
      <pubDate>Fri, 01 Nov 2013 10:31:37 +0800</pubDate>
      <link>https://ruby-china.org/topics/15202</link>
      <guid>https://ruby-china.org/topics/15202</guid>
    </item>
    <item>
      <title>mina 部署 rails 时出错</title>
      <description>&lt;p&gt;请问各位，我在用 mina 部署 rails 时出错，google 查了一下似乎是 rails 的环境变量问题，我在 deploy.rb 添加
set :rails_env, 'development'也没用，这个是用来设置 rails 变量的吧。deploy.rb 只改过四个地方，麻烦各位帮忙看看我哪里环境配置不对，谢谢。&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;set&lt;/span&gt; &lt;span class="ss"&gt;:domain&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'127.0.1.1'&lt;/span&gt;
&lt;span class="n"&gt;set&lt;/span&gt; &lt;span class="ss"&gt;:deploy_to&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'/home/dxw/apps/railsDemoApp'&lt;/span&gt;
&lt;span class="n"&gt;set&lt;/span&gt; &lt;span class="ss"&gt;:repository&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'git@github.com:dxwts/railsDemoApp.git'&lt;/span&gt;
&lt;span class="n"&gt;set&lt;/span&gt; &lt;span class="ss"&gt;:branch&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'master'&lt;/span&gt;
&lt;span class="n"&gt;set&lt;/span&gt; &lt;span class="ss"&gt;:rails_env&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'development'&lt;/span&gt;

&lt;span class="o"&gt;-----&amp;gt;&lt;/span&gt; &lt;span class="no"&gt;Migrating&lt;/span&gt; &lt;span class="n"&gt;database&lt;/span&gt;
       &lt;span class="n"&gt;rake&lt;/span&gt; &lt;span class="n"&gt;aborted!&lt;/span&gt;
       &lt;span class="n"&gt;database&lt;/span&gt; &lt;span class="n"&gt;configuration&lt;/span&gt; &lt;span class="n"&gt;does&lt;/span&gt; &lt;span class="ow"&gt;not&lt;/span&gt; &lt;span class="n"&gt;specify&lt;/span&gt; &lt;span class="n"&gt;adapter&lt;/span&gt;
&lt;span class="o"&gt;.....................................................&lt;/span&gt;
       &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="no"&gt;See&lt;/span&gt; &lt;span class="n"&gt;full&lt;/span&gt; &lt;span class="n"&gt;trace&lt;/span&gt; &lt;span class="n"&gt;by&lt;/span&gt; &lt;span class="n"&gt;running&lt;/span&gt; &lt;span class="n"&gt;task&lt;/span&gt; &lt;span class="n"&gt;with&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;trace&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
 &lt;span class="o"&gt;!&lt;/span&gt;     &lt;span class="no"&gt;ERROR&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;Deploy&lt;/span&gt; &lt;span class="n"&gt;failed&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;span class="nf"&gt;-&lt;/span&gt;&lt;span class="o"&gt;----&amp;gt;&lt;/span&gt; &lt;span class="no"&gt;Cleaning&lt;/span&gt; &lt;span class="n"&gt;up&lt;/span&gt; &lt;span class="n"&gt;build&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>dxwts</author>
      <pubDate>Tue, 29 Oct 2013 21:59:20 +0800</pubDate>
      <link>https://ruby-china.org/topics/15134</link>
      <guid>https://ruby-china.org/topics/15134</guid>
    </item>
  </channel>
</rss>
