Ruby
Rails
RubyOnRails
Railsチュートリアル
Rails5

Railsチュートリアル10章(10.1.1演習2)の誤訳について


※本記事は翻訳者の方によりご対応いただきましたので読む必要はありません。ありがとうございます。(2018/10/10 追記)


Railsチュートリアルの翻訳で誤訳と思われる箇所がありましたので投稿いたします。

該当箇所:10.1.1演習2

例えば筆者であれば、リスト 10.5のテクニックをリスト 10.6に適用してみたり、リスト 10.7のテクニックをリスト 10.5に適用してみたりするでしょう。

原文

My suggestion is to use the variable-passing technique shown in Listing 10.5 to pass the needed URL from Listing 10.6 and Listing 10.7 to the form in Listing 10.5.

翻訳では、"...from Listing 10.6"に続く"and"で区切って2つの文の並列と捉えていますが、この"and"は"Listing 10.6"と"Listing 10.7"を並置しているものと考えられます。構文は"to pass A to B"となっており、"the needed ... Listing 10.7"がAに当たります。
これを踏まえて訳すと次のようになります。

修正案(直訳)

筆者の提案は、リスト10.5に表される変数渡しのテクニックを用いて、リスト10.6や10.7で要求されるURLを10.5のフォームに渡すというものです。

ここでの演習課題は、"provide"と"yield"を用いて、リスト10.5のform_forメソッドにリスト10.6と10.7からURL変数を引数として渡してあげるテクニックが問題となっています。(解答例参照

ところで、原文にある"shown in Listing 10.5"というのは少し冗長でもあり、正確にはまだ示されているわけでもない(問題を解くことで示されることになる)ので誤解を招かぬよう省略して訳したいところです。

以上を踏まえ、もとの翻訳を活かした形での修正案は以下のようになります。

修正案(意訳)

例えば筆者であれば、変数渡しのテクニックを用いることで、リスト10.6やリスト10.7で要求されるURL(変数)を(引数として)リスト10.5のフォームに渡すでしょう。