<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Jacob (TWTO)</title>
    <link>https://ruby-china.org/Jacob</link>
    <description>学编程语言让我懂得了创造的快乐</description>
    <language>en-us</language>
    <item>
      <title>【福州】【全职】招聘 Ruby 研发工程师</title>
      <description>&lt;p&gt;博思数采科技发展有限公司，是上市公司博思软件股份有限公司 (股票代码:300525) 的全资子公司，注册资本 13000 万，是一家专门为政府部门和企事业单位提供互联网采购管理平台及金融科技服务型公司。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;计算机及相关专业本科或本科以上学历，但不必须&lt;/li&gt;
&lt;li&gt;1 年以上 web 开发经验，精通 ruby 和 ror，熟悉 css，js, html 等相关 web 技术 &lt;/li&gt;
&lt;li&gt;至少熟悉一种常见的前端框架如 jquery&lt;/li&gt;
&lt;li&gt;熟悉 Linux 基本操作指令&lt;/li&gt;
&lt;li&gt;熟悉数据库如 mysql, redis&lt;/li&gt;
&lt;li&gt;熟悉 git 等常用工具，熟练使用 github，google 等网站&lt;/li&gt;
&lt;li&gt;熟悉常用 ror 开发的 gems&lt;/li&gt;
&lt;li&gt;良好的编码习惯，有责任心，对代码的质量和性能，有一定自我要求，能独立主动解决问题&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;加分项：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;对服务的搭建与运维有了解&lt;/li&gt;
&lt;li&gt;对性能优化有见解&lt;/li&gt;
&lt;li&gt;对爬虫有一定经验&lt;/li&gt;
&lt;li&gt;了解 python&lt;/li&gt;
&lt;li&gt;对人工智能 NLP 方向有兴趣研究&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;工作地点：福州长乐数字小镇，风景优美，有山有湖，提供免费单人公寓。&lt;/p&gt;

&lt;p&gt;有兴趣发送简历至：zhouwenlong@bosssoft.com.cn&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Wed, 06 Apr 2022 16:46:07 +0800</pubDate>
      <link>https://ruby-china.org/topics/42283</link>
      <guid>https://ruby-china.org/topics/42283</guid>
    </item>
    <item>
      <title>[北京][海淀] 阳光公采招聘 Rails 中高级开发人员</title>
      <description>&lt;p&gt;阳光公采科技有限公司是一家专门从事政府采购行业相关的创业型软件公司，依托政府和上市公司投资背景，与京东，国美，苏宁等电商合作，专门针对政府采购行业，致力于改变政府采购不透明，特供，价格贵等情况。欢迎大家来分享未来开放的政府采购这块大蛋糕。&lt;/p&gt;

&lt;p&gt;· 计算机及相关专业本科或本科以上学历
· 2 年以上 web 开发经验
· 精通 ruby 和 ror，jquery，Linux，Git 等 web 开发技术
· 有手机端，项目领导等经验的优先&lt;/p&gt;

&lt;p&gt;有意者请发送 e-mail 至：yggc@sinopr.org‍&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Thu, 13 Nov 2014 09:17:56 +0800</pubDate>
      <link>https://ruby-china.org/topics/22639</link>
      <guid>https://ruby-china.org/topics/22639</guid>
    </item>
    <item>
      <title>[北京][海淀] 阳光公采诚招 rails 开发工程师</title>
      <description>&lt;p&gt;Hi，未来的同事：&lt;/p&gt;

&lt;p&gt;有个事情要跟你说一下：我想念你好久了。O(∩_∩)O 哈哈~&lt;/p&gt;

&lt;p&gt;公司初创，事业繁忙，正需要大量的有志之士前来共同实现自己理想。
我们在做一些公共资源数据服务，交易业务方面的事情，目前人手紧缺，期待您的加入。&lt;/p&gt;

&lt;p&gt;招聘要求：&lt;/p&gt;

&lt;p&gt;计算机及相关专业本科或本科以上学历，能力优秀者可适当放宽
1 年以上实际 Rails 项目开发经验，2 年以上 WEB 开发工作经验
熟悉 HTML, Javascript 和 jQuery, CSS，能自己搞定前端开发的工作
熟悉 Linux 系统
熟悉 Mysql,Git
良好的代码规范。对代码质量精益求精，志向于编写优美简洁的代码
思路清晰，善于思考，能独立分析和解决问题
责任心强，具备良好的团队合作精神和承受压力的能力
会其他编程语言的优先
如果你有 bolg 或者开源项目或者 github 账号，请附上相关链接；
月薪 8K 以上，详细面谈&lt;/p&gt;

&lt;p&gt;公司信息：&lt;/p&gt;

&lt;p&gt;北京阳光公采科技有限公司（简称“阳光公采”）成立于 2013 年 5 月，注册在北京市海淀区，是中关村的高科技软件企业。目前公司有 20 人，研发人员 15 人，大专以上学历人才占有 80% 以上。无论公司高层管理人员、市场人员，还是研发人员，在公共资源交易这个特殊的领域有较长的从业经历和行业理解力，并在产品开发、产业链资源整合、市场拓展等方面都表现出强劲的推动力！
公司定位为公共资源交易平台、应用产品、增值服务的软件开发商，增值服务提供商和运营商。目前已经开发完成大部分软件产品，并且已经申请和拟申请的软件著作权和专利有 20 多项。为了创造更好的产业生态环境，以及为用户提供更好、更全面的增值服务方面，公司整合产业链上下游企业，达成战略合作，共同推动市场发展，形成多赢的局面。
公司为工作人员提供优厚的工资和福利待遇、轻松的工作氛围和舒适的工作环境，并提供具备资深行业、政府背景的职业发展前景，欢迎有识之士加入！&lt;/p&gt;

&lt;p&gt;如有意愿者请发送简历至：i_love_rails@yeah.net&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Tue, 26 Nov 2013 10:03:16 +0800</pubDate>
      <link>https://ruby-china.org/topics/15797</link>
      <guid>https://ruby-china.org/topics/15797</guid>
    </item>
    <item>
      <title>solr 用了中文分词 mmseg4j，但是某些情况不想用中文分词需要完全匹配，可以吗</title>
      <description>&lt;p&gt;首页搜索用了中文分词，但有些后台大数据查询想精确匹配，不要它自动分词，有什么办法吗&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Sat, 12 Oct 2013 08:56:59 +0800</pubDate>
      <link>https://ruby-china.org/topics/14685</link>
      <guid>https://ruby-china.org/topics/14685</guid>
    </item>
    <item>
      <title>请问如何把一个 Nokogiri 解析出来的 link 保存到数据库</title>
      <description>&lt;p&gt;有些 link 因为网络原因可能暂时不能访问，想保存下来放到下次再进行抓取&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;link&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="no"&gt;Nokogiri&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;HTML&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;parse&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;open&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;)).&lt;/span&gt;&lt;span class="nf"&gt;css&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'a'&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;first&lt;/span&gt;
&lt;span class="n"&gt;link&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'href'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"xxx/xxx"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;TRY&amp;lt;一&amp;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;MissingLink&lt;/span&gt;

&lt;span class="n"&gt;serialize&lt;/span&gt; &lt;span class="ss"&gt;:link&lt;/span&gt;

&lt;span class="k"&gt;end&lt;/span&gt;

&lt;span class="no"&gt;MissingLink&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ss"&gt;:link&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;link&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;missing_link&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="no"&gt;MissingLink&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;last&lt;/span&gt;

&lt;span class="n"&gt;missing_link&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;link&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;class&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="no"&gt;Nokogiri&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;XML&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;Element&lt;/span&gt;

&lt;span class="n"&gt;missing_link&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;link&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'href'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="no"&gt;TypeError&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;wrong&lt;/span&gt; &lt;span class="n"&gt;argument&lt;/span&gt; &lt;span class="n"&gt;type&lt;/span&gt; &lt;span class="no"&gt;Nokogiri&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;XML&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;Element&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;expected&lt;/span&gt; &lt;span class="no"&gt;Data&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;TRY&amp;lt;二&amp;gt;
使用 Marshal.dump&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="no"&gt;MissingLink&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ss"&gt;:link&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="no"&gt;Marshal&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;dump&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;link&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="n"&gt;_dump_data&lt;/span&gt; &lt;span class="n"&gt;is&lt;/span&gt; &lt;span class="n"&gt;defined&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Nokogiri::XML::Element&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;请问该怎么保存？谢谢&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Tue, 03 Sep 2013 09:31:41 +0800</pubDate>
      <link>https://ruby-china.org/topics/13839</link>
      <guid>https://ruby-china.org/topics/13839</guid>
    </item>
    <item>
      <title>[北京][海淀] 阳光公采招聘 rails 开发工程师</title>
      <description>&lt;p&gt;Hi，未来的同事：&lt;/p&gt;

&lt;p&gt;有个事情要跟你说一下：我想念你好久了。O(∩_∩)O 哈哈~&lt;/p&gt;

&lt;p&gt;公司初创，事业繁忙，正需要大量的有志之士前来共同实现自己理想。
我们在做一些公共资源数据服务，交易业务方面的事情，目前人手紧缺，期待您的加入。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;招聘要求：&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;计算机及相关专业本科或本科以上学历，能力优秀者可适当放宽&lt;/li&gt;
&lt;li&gt;1 年以上实际 Rails 项目开发经验，2 年以上 WEB 开发工作经验&lt;/li&gt;
&lt;li&gt;熟悉 HTML, Javascript 和 jQuery, CSS，能自己搞定前端开发的工作&lt;/li&gt;
&lt;li&gt;熟悉 Linux 系统&lt;/li&gt;
&lt;li&gt;熟悉 Mysql,Git&lt;/li&gt;
&lt;li&gt;良好的代码规范。对代码质量精益求精，志向于编写优美简洁的代码&lt;/li&gt;
&lt;li&gt;思路清晰，善于思考，能独立分析和解决问题&lt;/li&gt;
&lt;li&gt;责任心强，具备良好的团队合作精神和承受压力的能力&lt;/li&gt;
&lt;li&gt;会其他编程语言的优先&lt;/li&gt;
&lt;li&gt;如果你有 bolg 或者开源项目或者 github 账号，请附上相关链接；&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;月薪 8K 以上，详细面谈&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;公司信息：&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;北京阳光公采科技有限公司（简称“阳光公采”）成立于 2013 年 5 月，注册在北京市海淀区，是中关村的高科技软件企业。目前公司有 20 人，研发人员 15 人，大专以上学历人才占有 80% 以上。无论公司高层管理人员、市场人员，还是研发人员，在公共资源交易这个特殊的领域有较长的从业经历和行业理解力，并在产品开发、产业链资源整合、市场拓展等方面都表现出强劲的推动力！
公司定位为公共资源交易平台、应用产品、增值服务的软件开发商，增值服务提供商和运营商。目前已经开发完成大部分软件产品，并且已经申请和拟申请的软件著作权和专利有 20 多项。为了创造更好的产业生态环境，以及为用户提供更好、更全面的增值服务方面，公司整合产业链上下游企业，达成战略合作，共同推动市场发展，形成多赢的局面。
公司为工作人员提供优厚的工资和福利待遇、轻松的工作氛围和舒适的工作环境，并提供具备资深行业、政府背景的职业发展前景，欢迎有识之士加入！&lt;/p&gt;

&lt;p&gt;如有意愿者请发送简历至：i_love_rails@yeah.net&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Tue, 23 Jul 2013 17:48:20 +0800</pubDate>
      <link>https://ruby-china.org/topics/12714</link>
      <guid>https://ruby-china.org/topics/12714</guid>
    </item>
    <item>
      <title>万网电话说我们买的独立主机必须迁到云主机 有这说法吗？</title>
      <description>&lt;p&gt;主机是 ubuntu，附件那么多，而且云主机还没有 ubuntu，这不是网络版的强拆吗？有什么应对的方法吗？&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Mon, 04 Mar 2013 16:29:39 +0800</pubDate>
      <link>https://ruby-china.org/topics/9121</link>
      <guid>https://ruby-china.org/topics/9121</guid>
    </item>
    <item>
      <title>UTF8 输入最少 4 个字符，2 个汉字，model 的 validate 怎么写?</title>
      <description>&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;validates&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;:presence&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="kp"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;:uniqueness&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="kp"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;:length&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;:maximum&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;minimum: &lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;用户名规则输入最少 4 个字符，一个汉字等于 2 个字符，前台没问题，但是后台这样的话输入 3 个汉字还是过不了&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Mon, 05 Nov 2012 17:01:45 +0800</pubDate>
      <link>https://ruby-china.org/topics/6545</link>
      <guid>https://ruby-china.org/topics/6545</guid>
    </item>
    <item>
      <title>怎么为 simple_form 的 collection_radio_buttons 每个选项设置不同的属性值</title>
      <description>&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sx"&gt;%= f.collection_radio_buttons :address_id, @addresses.map {|a| [a.id, a.name]}, :first, :last, {:item_wrapper_tag =&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="ss"&gt;:div&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;:item_wrapper_class&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="s2"&gt;"option_box"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;:wrapper&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="kp"&gt;false&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;%&amp;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="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;div&lt;/span&gt; &lt;span class="k"&gt;class&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"option_box"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;input&lt;/span&gt; &lt;span class="n"&gt;checked&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"checked"&lt;/span&gt; &lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"order_address_id_9"&lt;/span&gt; &lt;span class="nb"&gt;name&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"order[address_id]"&lt;/span&gt; &lt;span class="n"&gt;type&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"radio"&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"9"&lt;/span&gt;  &lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;label&lt;/span&gt; &lt;span class="k"&gt;class&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"collection_radio_buttons"&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"order_address_id_9"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;张三丰&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;21313212312&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;宁夏回族自治区&lt;/span&gt; &lt;span class="n"&gt;银川市&lt;/span&gt; &lt;span class="n"&gt;市辖区&lt;/span&gt; &lt;span class="n"&gt;啥&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;213123&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/label&amp;gt;
&amp;lt;/&lt;/span&gt;&lt;span class="n"&gt;div&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;我现在想在 input 里面加一个额外的参数，这个参数每个选项都不同：&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;input&lt;/span&gt; &lt;span class="n"&gt;checked&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"checked"&lt;/span&gt; &lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"order_address_id_9"&lt;/span&gt; &lt;span class="nb"&gt;name&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"order[address_id]"&lt;/span&gt; &lt;span class="n"&gt;type&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"radio"&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"9"&lt;/span&gt;  &lt;span class="o"&gt;**&lt;/span&gt;&lt;span class="k"&gt;class&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"address_9"&lt;/span&gt;&lt;span class="o"&gt;**&lt;/span&gt; &lt;span class="sr"&gt;/&amp;gt;
&amp;lt;input checked="checked" id="order_address_id_10" name="order[address_id]" type="radio" value="9"  **class="address_10"** /&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;该这么写？&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Mon, 05 Nov 2012 12:22:11 +0800</pubDate>
      <link>https://ruby-china.org/topics/6536</link>
      <guid>https://ruby-china.org/topics/6536</guid>
    </item>
    <item>
      <title>metasearch +acts-as-taggable-on 多标签查询求助～</title>
      <description>&lt;p&gt;Model:&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="c1"&gt;# encoding: utf-8&lt;/span&gt;
&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Product&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="n"&gt;acts_as_taggable&lt;/span&gt;
  &lt;span class="n"&gt;acts_as_taggable_on&lt;/span&gt; &lt;span class="ss"&gt;:skills&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ss"&gt;:humans&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;HTML:&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sx"&gt;%= form_for @search, :url =&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;  &lt;span class="n"&gt;search_path&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="sx"&gt;%&amp;gt;
     &amp;lt;%= f.text_field  :skill_taggings_tag_name_eq %&amp;gt;&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;%&lt;/span&gt;&lt;span class="k"&gt;end&lt;/span&gt;&lt;span class="sx"&gt;%&amp;gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;生成的 SQL:&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="no"&gt;SELECT&lt;/span&gt; &lt;span class="sb"&gt;`products`&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;*&lt;/span&gt; &lt;span class="no"&gt;FROM&lt;/span&gt; &lt;span class="sb"&gt;`products`&lt;/span&gt; 

&lt;span class="no"&gt;LEFT&lt;/span&gt; &lt;span class="no"&gt;OUTER&lt;/span&gt; &lt;span class="no"&gt;JOIN&lt;/span&gt; &lt;span class="sb"&gt;`taggings`&lt;/span&gt; 
&lt;span class="no"&gt;ON&lt;/span&gt; &lt;span class="sb"&gt;`taggings`&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;`&lt;/span&gt;&lt;span class="n"&gt;taggable_id&lt;/span&gt;&lt;span class="sb"&gt;` = `&lt;/span&gt;&lt;span class="n"&gt;products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="sb"&gt;` AND `&lt;/span&gt;&lt;span class="n"&gt;taggings&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;taggable_type&lt;/span&gt;&lt;span class="sb"&gt;` = 'Product' AND taggings.context = 'skills' 
LEFT OUTER JOIN `&lt;/span&gt;&lt;span class="n"&gt;tags&lt;/span&gt;&lt;span class="sb"&gt;` 
ON `&lt;/span&gt;&lt;span class="n"&gt;tags&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="sb"&gt;` = `&lt;/span&gt;&lt;span class="n"&gt;taggings&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;tag_id&lt;/span&gt;&lt;span class="sb"&gt;` 

WHERE `&lt;/span&gt;&lt;span class="n"&gt;products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;published&lt;/span&gt;&lt;span class="sb"&gt;` = 1 AND `&lt;/span&gt;&lt;span class="n"&gt;products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;category_id&lt;/span&gt;&lt;span class="sb"&gt;` = 4 
AND `&lt;/span&gt;&lt;span class="n"&gt;tags&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="nb"&gt;name&lt;/span&gt;&lt;span class="sb"&gt;` = '老年人'
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;这样没有任何问题，但是如果有 2 个以上标签联合查询的时候，就查不到一条数据：
HTML:&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sx"&gt;%= form_for @search, :url =&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;  &lt;span class="n"&gt;search_path&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="sx"&gt;%&amp;gt;
     &amp;lt;%= f.text_field  :skill_taggings_tag_name_eq %&amp;gt;&lt;/span&gt;
     &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sx"&gt;%= f.text_field  :human_taggings_tag_name_eq %&amp;gt;
&amp;lt;%end%&amp;gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;生成的 SQL:&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="no"&gt;SELECT&lt;/span&gt; &lt;span class="sb"&gt;`products`&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;*&lt;/span&gt; &lt;span class="no"&gt;FROM&lt;/span&gt; &lt;span class="sb"&gt;`products`&lt;/span&gt; 

&lt;span class="no"&gt;LEFT&lt;/span&gt; &lt;span class="no"&gt;OUTER&lt;/span&gt; &lt;span class="no"&gt;JOIN&lt;/span&gt; &lt;span class="sb"&gt;`taggings`&lt;/span&gt; 
&lt;span class="no"&gt;ON&lt;/span&gt; &lt;span class="sb"&gt;`taggings`&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;`&lt;/span&gt;&lt;span class="n"&gt;taggable_id&lt;/span&gt;&lt;span class="sb"&gt;` = `&lt;/span&gt;&lt;span class="n"&gt;products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="sb"&gt;` AND `&lt;/span&gt;&lt;span class="n"&gt;taggings&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;taggable_type&lt;/span&gt;&lt;span class="sb"&gt;` = 'Product' 
AND taggings.context = 'skills' #这是taggings.context
LEFT OUTER JOIN `&lt;/span&gt;&lt;span class="n"&gt;tags&lt;/span&gt;&lt;span class="sb"&gt;` 
ON `&lt;/span&gt;&lt;span class="n"&gt;tags&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="sb"&gt;` = `&lt;/span&gt;&lt;span class="n"&gt;taggings&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;tag_id&lt;/span&gt;&lt;span class="sb"&gt;` 

LEFT OUTER JOIN `&lt;/span&gt;&lt;span class="n"&gt;taggings&lt;/span&gt;&lt;span class="sb"&gt;` `&lt;/span&gt;&lt;span class="n"&gt;humans_taggings_products&lt;/span&gt;&lt;span class="sb"&gt;` 
ON `&lt;/span&gt;&lt;span class="n"&gt;humans_taggings_products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;taggable_id&lt;/span&gt;&lt;span class="sb"&gt;` = `&lt;/span&gt;&lt;span class="n"&gt;products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="sb"&gt;` AND `&lt;/span&gt;&lt;span class="n"&gt;humans_taggings_products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;taggable_type&lt;/span&gt;&lt;span class="sb"&gt;` = 'Product' 
AND taggings.context = 'humans' #这里也是taggins.context
LEFT OUTER JOIN `&lt;/span&gt;&lt;span class="n"&gt;tags&lt;/span&gt;&lt;span class="sb"&gt;` `&lt;/span&gt;&lt;span class="n"&gt;tags_taggings&lt;/span&gt;&lt;span class="sb"&gt;` 
ON `&lt;/span&gt;&lt;span class="n"&gt;tags_taggings&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="sb"&gt;` = `&lt;/span&gt;&lt;span class="n"&gt;humans_taggings_products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;tag_id&lt;/span&gt;&lt;span class="sb"&gt;` 

WHERE `&lt;/span&gt;&lt;span class="n"&gt;products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;published&lt;/span&gt;&lt;span class="sb"&gt;` = 1 AND `&lt;/span&gt;&lt;span class="n"&gt;products&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="n"&gt;category_id&lt;/span&gt;&lt;span class="sb"&gt;` = 4 
AND `&lt;/span&gt;&lt;span class="n"&gt;tags&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="nb"&gt;name&lt;/span&gt;&lt;span class="sb"&gt;` = '老年人' AND `&lt;/span&gt;&lt;span class="n"&gt;tags_taggings&lt;/span&gt;&lt;span class="sb"&gt;`.`&lt;/span&gt;&lt;span class="nb"&gt;name&lt;/span&gt;&lt;span class="sb"&gt;` = '增强免疫' 
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;原因是 2 个左链接使用了相同的&lt;strong&gt;taggings.context&lt;/strong&gt;, 如果把第二个&lt;strong&gt;taggings.context='humans'&lt;/strong&gt;改成&lt;strong&gt;humans_taggings_products='humans'&lt;/strong&gt;就 OK 了&lt;/p&gt;

&lt;p&gt;github 上有相同的问题&lt;a href="https://github.com/ernie/meta_search/issues/104" rel="nofollow" target="_blank"&gt;https://github.com/ernie/meta_search/issues/104&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;不知道大家有没有办法或者解决思路，谢谢！&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Sat, 20 Oct 2012 07:55:52 +0800</pubDate>
      <link>https://ruby-china.org/topics/6196</link>
      <guid>https://ruby-china.org/topics/6196</guid>
    </item>
    <item>
      <title>关于动态添加 i18n,大家有没有什么好办法？</title>
      <description>&lt;p&gt;比如想动态增加一个标签 skill，对应的 simple_form 的 i18n 想条数据 skill: 技术&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Thu, 18 Oct 2012 12:00:29 +0800</pubDate>
      <link>https://ruby-china.org/topics/6149</link>
      <guid>https://ruby-china.org/topics/6149</guid>
    </item>
    <item>
      <title>paperclip 的奇怪问题 ArgumentError (invalid byte sequence in UTF-8)</title>
      <description>&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ArgumentError (invalid byte sequence in UTF-8):

Rendered /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (1.3ms)
Error during failsafe response: ActionView::Template::Error
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/activesupport-3.0.17/lib/active_support/whiny_nil.rb:48:in `method_missing'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_dispatch/http/parameters.rb:10:in `parameters'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb:3:in `___sers_zhou__rvm_gems_ruby_______p____gems_actionpack________lib_action_dispatch_middleware_templates_rescues_diagnostics_erb___1483444867163265190_70230427679100_3291920484360248562'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_view/template.rb:135:in `block in render'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/activesupport-3.0.17/lib/active_support/notifications.rb:54:in `instrument'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_view/template.rb:127:in `render'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_view/render/rendering.rb:59:in `block in _render_template'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/activesupport-3.0.17/lib/active_support/notifications.rb:52:in `block in instrument'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/activesupport-3.0.17/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/activesupport-3.0.17/lib/active_support/notifications.rb:52:in `instrument'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_view/render/rendering.rb:56:in `_render_template'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_view/render/rendering.rb:26:in `render'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_dispatch/middleware/show_exceptions.rb:88:in `rescue_action_locally'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_dispatch/middleware/show_exceptions.rb:68:in `render_exception'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_dispatch/middleware/show_exceptions.rb:59:in `call'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/railties-3.0.17/lib/rails/rack/logger.rb:13:in `call'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/rack-1.2.5/lib/rack/runtime.rb:17:in `call'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/rack-1.2.5/lib/rack/lock.rb:13:in `block in call'
  &amp;lt;internal:prelude&amp;gt;:10:in `synchronize'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/rack-1.2.5/lib/rack/lock.rb:13:in `call'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/actionpack-3.0.17/lib/action_dispatch/middleware/static.rb:30:in `call'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/railties-3.0.17/lib/rails/application.rb:168:in `call'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/railties-3.0.17/lib/rails/application.rb:77:in `method_missing'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/railties-3.0.17/lib/rails/rack/log_tailer.rb:14:in `call'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/rack-1.2.5/lib/rack/content_length.rb:13:in `call'
  /Users/zhou/.rvm/gems/ruby-1.9.2-p320/gems/rack-1.2.5/lib/rack/handler/webrick.rb:52:in `service'
  /Users/zhou/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
  /Users/zhou/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
  /Users/zhou/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;一直都好好的，今天莫名其妙出这个问题，另一台机器就没问题，google 完全无果，不知道有没有人知道如何解决？谢谢 ruby1.9.2+rails3.0.17&lt;/p&gt;</description>
      <author>Jacob</author>
      <pubDate>Wed, 10 Oct 2012 18:43:14 +0800</pubDate>
      <link>https://ruby-china.org/topics/5974</link>
      <guid>https://ruby-china.org/topics/5974</guid>
    </item>
  </channel>
</rss>
