<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>ytwman (杉杉)</title>
    <link>https://ruby-china.org/ytwman</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>在 Vagrant 中开发 RoR 项目 如何提交 assets 的编译速度？</title>
      <description>&lt;p&gt;在 Windows 下搭了个 Vagrant 安装了 ubuntu 来写 ROR 项目，但是发现 assets 编译速度太慢的，往往都要 10 秒左右才能刷出页面，该如何解决的呢？&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Sun, 12 Jan 2014 22:38:21 +0800</pubDate>
      <link>https://ruby-china.org/topics/16748</link>
      <guid>https://ruby-china.org/topics/16748</guid>
    </item>
    <item>
      <title>SEO 相关</title>
      <description>&lt;h2 id="站内优化："&gt;站内优化：&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;sitemap     一般蜘蛛不会抓那么完全，通过提交 sitemap 可以提高爬虫的抓取范围，推荐使用 sitemap_generater gem 来生成&lt;/li&gt;
&lt;li&gt;nofollow    避免刷外链造成页面分权，可以在页面 meta 里面 或 a 标签中增加 rel="nofollow"&lt;/li&gt;
&lt;li&gt;canonical  消除重复性页面，对于搜索引擎来说，很多重复性页面会导致分权，常用于分页、排序等或者相识度比较高的页面，在 meta 里面指定一个主页面&lt;/li&gt;
&lt;li&gt;desription  搜索引擎会抓取此部分的内容展示给用户看&lt;/li&gt;
&lt;li&gt;301 重定向 针对域名更换等问题，如果不想导致权重流失，可以使用 301 把原来的域名的权重导向到新的域名或二级域名下&lt;/li&gt;
&lt;li&gt;robots.txt   一定要写，但不能写错&lt;/li&gt;
&lt;li&gt;title           对于用户和搜索引擎都是有利的，不能重复&lt;/li&gt;
&lt;li&gt;image       title 属性&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="站外优化："&gt;站外优化：&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;外联平台

&lt;ol&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;分类信息&lt;/li&gt;
&lt;li&gt;商贸网站&lt;/li&gt;
&lt;li&gt;新闻平台&lt;/li&gt;
&lt;li&gt;百科&lt;/li&gt;
&lt;li&gt;目录网站 (目录网站 hao123 这种)&lt;/li&gt;
&lt;li&gt;知乎&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;外联建设

&lt;ol&gt;
&lt;li&gt;随意性 (80%)&lt;/li&gt;
&lt;li&gt;集中性 (20%)&lt;/li&gt;
&lt;li&gt;稳定性&lt;/li&gt;
&lt;li&gt;阶梯型&lt;/li&gt;
&lt;li&gt;持续性&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;利用站长工具 (chinas tools、aizhan) 进行查询

&lt;ol&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;排名情况&lt;/li&gt;
&lt;li&gt;外联收录情况&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="注意事项"&gt;注意事项&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;尽量不要让页面分权，站内页面越多并不一定能带起权重的增加&lt;/li&gt;
&lt;li&gt;注意友链的质量，如果不高最好还是删除&lt;/li&gt;
&lt;li&gt;服务器下所有域名的权重，如果服务器下游很多域名公用一个 ip 的，一旦有一个域名出问题，很有可能对自己的域名造成影响。&lt;/li&gt;
&lt;li&gt;站内死链&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="专业分析工具"&gt;专业分析工具&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;alibench&lt;/li&gt;
&lt;li&gt;seowhy tools&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;现在百度有绿萝算法了，查买卖外联比较严格，买卖外联我觉得还是不很划算，但是外联对权重影响是比较大的一块。如果是想快速增加小众排名可以借鉴这种方法。外联建设一定要按照上面的法则来操作。
外联购买和软文方面可以去 etuan 和淘宝上看看，像百科、知乎这类的编辑账号一般都卖的有，权重比较高，养米速度快，至于新闻网站可以去买一些大网站的投稿，比如说中华网、腾讯这类的，至于小站就不必了。&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Thu, 02 Jan 2014 16:54:34 +0800</pubDate>
      <link>https://ruby-china.org/topics/16574</link>
      <guid>https://ruby-china.org/topics/16574</guid>
    </item>
    <item>
      <title>有没有玩过大疆的东西的</title>
      <description>&lt;p&gt;Phantom 系列 或者是风火轮和筋斗云的？求感受。最近刚上 Phantom 2，想入手一个。&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Wed, 25 Dec 2013 22:08:48 +0800</pubDate>
      <link>https://ruby-china.org/topics/16424</link>
      <guid>https://ruby-china.org/topics/16424</guid>
    </item>
    <item>
      <title>国内有没有视频云平台</title>
      <description>&lt;p&gt;RT，国内有没有视频云平台，提供上传、播放、限制下载、分段处理、转码等功能的视频云平台的？像 upyun 一样，针对图片进行处理类似的。求推荐几个。&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Wed, 25 Dec 2013 11:15:25 +0800</pubDate>
      <link>https://ruby-china.org/topics/16411</link>
      <guid>https://ruby-china.org/topics/16411</guid>
    </item>
    <item>
      <title>turbolinks google analytics 要如何解决呢？</title>
      <description>&lt;p&gt;试过 google-analytics-turbolinks gem 和 &lt;a href="http://railsapps.github.io/rails-google-analytics.html" rel="nofollow" target="_blank"&gt;http://railsapps.github.io/rails-google-analytics.html&lt;/a&gt; 两种办法都不行，不知道是不是我设置的有问题？请教下大神们该如何解决，google analytics 和 turbolinks  共存的问题。&lt;/p&gt;

&lt;p&gt;我在 application.js 里面 添加了下面这段代码&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nf"&gt;$&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;on&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;page:change&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;window&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;_gaq&lt;/span&gt; &lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;_gaq&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="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;_trackPageview&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;window&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;pageTracker&lt;/span&gt; &lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;pageTracker&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;_trackPageview&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="p"&gt;}).&lt;/span&gt;&lt;span class="nf"&gt;call&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;然后后再页面 body 里面增加了下面代码。&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;s&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;o&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;g&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;r&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;m&lt;/span&gt;&lt;span class="p"&gt;){&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;GoogleAnalyticsObject&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nx"&gt;r&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;r&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;r&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="o"&gt;||&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(){(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;r&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nx"&gt;q&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;r&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nx"&gt;q&lt;/span&gt;&lt;span class="o"&gt;||&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="nx"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;)},&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;r&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nx"&gt;l&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Date&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nx"&gt;s&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;createElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="nx"&gt;m&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nx"&gt;s&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementsByTagName&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o&lt;/span&gt;&lt;span class="p"&gt;)[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;async&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nx"&gt;g&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="nx"&gt;m&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;parentNode&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;insertBefore&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;m&lt;/span&gt;&lt;span class="p"&gt;)})(&lt;/span&gt;&lt;span class="nb"&gt;window&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;script&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;//www.google-analytics.com/analytics.js&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ga&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nf"&gt;ga&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;create&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;UA-11111111-1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;xxx.xx&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nf"&gt;ga&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;send&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;pageview&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;但是每次加载页面或者刷新页面的时候都不会请求 google analytics。是不是我设置有问题呢？&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Wed, 04 Dec 2013 13:29:54 +0800</pubDate>
      <link>https://ruby-china.org/topics/15990</link>
      <guid>https://ruby-china.org/topics/15990</guid>
    </item>
    <item>
      <title>有没有襄阳地区的</title>
      <description>&lt;p&gt;还有没有老家是同一个地方的，交换下联系方式的。 ^_^ &lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Wed, 04 Dec 2013 09:32:24 +0800</pubDate>
      <link>https://ruby-china.org/topics/15982</link>
      <guid>https://ruby-china.org/topics/15982</guid>
    </item>
    <item>
      <title>Rails 中使用 Gem 来导入 Javascript lib 是否有必要？</title>
      <description>&lt;p&gt;rails 中引用了 jquery 和 turbolinks 的 gem，通常使用 gem 来代替 assets 的手工导入 js，gem 中的 query 做过一些针对于 rails 的修改。昨天看了 &lt;a href="/Rei" class="user-mention" title="@Rei"&gt;&lt;i&gt;@&lt;/i&gt;Rei&lt;/a&gt; 的 Writings 中关于 assets 的部分，大量的外部 lib 都采用 gem 的方式导入。
但我总觉得在 js lib 方面 gem 显得有些鸡肋，原因如下：
1.gem 的跟新速度过慢，很多 js lib 跟新之后但 gem 还是老版本，对于尝试新版本或者需要建立在某一特定版本的工程的需要自己去维护 js lib 的 assets 或者自己打包 gem
2.gem 中导入了一些 js lib 的环境参数，定制或配置上比较麻烦，例如 ckeditor&lt;/p&gt;

&lt;p&gt;针对 js lib 方面我觉得还是手工去配置 assets 比较好，至于 gem 可以做一些特定版本的适配比较合适，就像 jquery 那样，很多情况下使用 gem 的方式导入效果往往不如 assets 直接配置的方式要靠谱。&lt;/p&gt;

&lt;p&gt;上面只是我的个人观点，求大家喷点干货。&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Mon, 30 Sep 2013 09:20:13 +0800</pubDate>
      <link>https://ruby-china.org/topics/14482</link>
      <guid>https://ruby-china.org/topics/14482</guid>
    </item>
    <item>
      <title>求推荐适用于移动端得 js chart</title>
      <description>&lt;p&gt;最近手里一个项目需要用到 chart 这部分，从网上找了一些 js chart 但不太满意。求推荐一款 大小在 30kb 一下的 jschart，或者是可以拆分独立模块大小在 10-20kb 的 也不错。&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Wed, 18 Sep 2013 17:09:10 +0800</pubDate>
      <link>https://ruby-china.org/topics/14217</link>
      <guid>https://ruby-china.org/topics/14217</guid>
    </item>
    <item>
      <title>为什么大家不去翻译 Rails Guides</title>
      <description>&lt;p&gt;Rails Guides 中文分支放那已经很长时间了，为什么社区里面那么多大牛忙着推自己的教程，写一些个人心得，就没人愿意去翻译呢？一个开源软件的版本更新大多需要 1 年左右，这段时间是个很长的过程，针对国内的情况大家也都清楚，懂英语的没多少，而且精力也有限。
为了学习一些新东西难在了资料不通的门槛上的有很多，我也是其中一个。我就真搞不懂，大家都在搞自己的小群体，去推动自己的视频教程，课程什么的说到底也不能完全讲得详细，为什么不想着合众人之力去翻译下官方指南呢？而且社区还有那么多的大牛来指导和修正，我就有个小小的提议，社区管理们可以组团成员去尝试翻译下官方指南，里面还是有很多东西值得去翻阅的，自己学也是要去翻译，还不如翻译的过程中记录下来为社区做下贡献的。也可以借此提交自己知名度和影响力，有什么不好得？高端得东西咱们也得学，低端的也要照顾。每年一次的 rubyconf 都有了，一个 ruby rails 的中文指南都没有，也不是偏对 rails，只是觉得这玩意社区讨论的最多罢了。&lt;/p&gt;

&lt;p&gt;请 fork 一个分支吧。&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Thu, 12 Sep 2013 12:00:04 +0800</pubDate>
      <link>https://ruby-china.org/topics/14063</link>
      <guid>https://ruby-china.org/topics/14063</guid>
    </item>
    <item>
      <title>Rails 中多对多关系如何做校验</title>
      <description>&lt;p&gt;我现在有两个 Model 分别是 House 和 Company 对应的是多对多关系，并且有张中间表 house_companies。我想在插入 House 或者 Company 的时候验证下另一边的对象是否存在，该怎么做呢？有人建议我在中间表中做，但是感觉不是这样的。&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Wed, 11 Sep 2013 10:45:12 +0800</pubDate>
      <link>https://ruby-china.org/topics/14026</link>
      <guid>https://ruby-china.org/topics/14026</guid>
    </item>
    <item>
      <title>rbenv 安装 ruby 遇到 c 编译错误</title>
      <description>&lt;p&gt;按照 wiki 里面给的步骤安装的，&lt;a href="http://ruby-china.org/wiki/rbenv-guide" rel="nofollow" target="_blank"&gt;http://ruby-china.org/wiki/rbenv-guide&lt;/a&gt; 结果遇到编译错误。我这这边 xcode 也安装了的呀。错误详细下面链接。帮忙看下。
&lt;a href="http://segmentfault.com/q/1010000000304849" rel="nofollow" target="_blank"&gt;http://segmentfault.com/q/1010000000304849&lt;/a&gt;&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Sun, 08 Sep 2013 13:35:11 +0800</pubDate>
      <link>https://ruby-china.org/topics/13960</link>
      <guid>https://ruby-china.org/topics/13960</guid>
    </item>
    <item>
      <title>自连接的 model 如何设计 route 呢？</title>
      <description>&lt;p&gt;项目中有个关于地区的表，国家-&amp;gt;省-&amp;gt;市-&amp;gt;区-&amp;gt;镇-&amp;gt;乡这样的一个层级。然后定义的表结构如下：&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;area
  |-id
  |-name
  |-code
  |-parent_id
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;现在使用 rails 的 actsastree gem 做的自连接，在原有的 area model 上增加了 children 和 parent 两个成员变量作为自连接的引用对象。&lt;/p&gt;

&lt;p&gt;但是 restful 风格路由的时候 却不知道该怎么取弄了。&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;resources :areas
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;首先取出了第一级的地区，&lt;a href="http://localhost:3000/areas/" rel="nofollow" target="_blank"&gt;http://localhost:3000/areas/&lt;/a&gt; 我要接下去去取第二级数据去展示在一个页面里面或者在一个页面里编辑第二级的数据，那 route 要怎么设计呢？&lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Mon, 02 Sep 2013 11:07:38 +0800</pubDate>
      <link>https://ruby-china.org/topics/13817</link>
      <guid>https://ruby-china.org/topics/13817</guid>
    </item>
    <item>
      <title>Rails 中如何设置自连接类型</title>
      <description>&lt;p&gt;有一个 model 存放地区列表，使用 parent_id 保存上级节点的 id，如何配置关系才能实现自连接呢？从网上查了下，感觉和我这个不太一样，不明白他的 manager 和 mentor 什么意思。&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;自连接

对于表中的一个记录连接同一个表中的另一个记录也是可能发生的。举个例子，公司里每一个雇员有一个manager和一个mentor，这两个也是雇员。在Rails你可以这样建模。

class Employee &amp;lt; ActiveRecord::Base

belongs_to :manager,

:class_name =&amp;gt; "Employee",

:foreign_key =&amp;gt; "manager_id"

belongs_to :mentor,

:class_name =&amp;gt; "Employee",

:foreign_key =&amp;gt; "mentor_id"

has_many :mentored_employees,

:class_name =&amp;gt; "Employee",

:foreign_key =&amp;gt; "mentor_id"

has_many :managed_employees,

:class_name =&amp;gt; "Employee",

:foreign_key =&amp;gt; "manager_id"

end

让我们加载一些数据。Clem和Dawn每个都一个mamager和一个mentor。
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>ytwman</author>
      <pubDate>Sun, 01 Sep 2013 00:23:45 +0800</pubDate>
      <link>https://ruby-china.org/topics/13791</link>
      <guid>https://ruby-china.org/topics/13791</guid>
    </item>
    <item>
      <title>淘宝的 gem 源是不是很不稳定？</title>
      <description>&lt;p&gt;本地和 heroku 都很慢，再也找不到以前的感觉了，好伤心。&lt;a href="/huacnlee" class="user-mention" title="@huacnlee"&gt;&lt;i&gt;@&lt;/i&gt;huacnlee&lt;/a&gt;&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nt"&gt;-----&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; Ruby/Rails app detected
&lt;span class="nt"&gt;-----&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; Using Ruby version: ruby-2.0.0
&lt;span class="nt"&gt;-----&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; Installing dependencies using Bundler version 1.3.2
       Running: bundle &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--without&lt;/span&gt; development:test &lt;span class="nt"&gt;--path&lt;/span&gt; vendor/bundle -
&lt;span class="nt"&gt;-binstubs&lt;/span&gt; vendor/bundle/bin
       Fetching &lt;span class="nb"&gt;source &lt;/span&gt;index from http://ruby.taobao.org/
       Could not fetch specs from http://ruby.taobao.org/
       Bundler Output: Fetching &lt;span class="nb"&gt;source &lt;/span&gt;index from http://ruby.taobao.org/
       Could not fetch specs from http://ruby.taobao.org/
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>ytwman</author>
      <pubDate>Fri, 23 Aug 2013 16:07:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/13554</link>
      <guid>https://ruby-china.org/topics/13554</guid>
    </item>
    <item>
      <title>Block 调用问题</title>
      <description>&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;method&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;g&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="k"&gt;yield&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;g&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="n"&gt;g&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;

&lt;span class="nb"&gt;method&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"safdsa"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"test"&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;上面代码执行后打印结果：
safdsa
test
safdsa
请问下这是为何？  &lt;/p&gt;</description>
      <author>ytwman</author>
      <pubDate>Sun, 27 Nov 2011 18:06:30 +0800</pubDate>
      <link>https://ruby-china.org/topics/207</link>
      <guid>https://ruby-china.org/topics/207</guid>
    </item>
  </channel>
</rss>
