2

次のコードを1行にまとめることができるかどうか疑問に思っています。

if self.id
  return if Party.find_by_id(self.id).name.downcase == self.name.downcase
end

とにかくこのステートメントを1行にまとめることができるかどうか疑問に思いました。

私はあなたが使うことができることを知っていますif statement ? then_statement : else_statement、しかしうまくいけばあなたは他に何もないことをここで見ることができます。おそらくbreak、またはcontinueそのようなものですか?(実際のコードが表示された場合は、自由に最適化してください。これがここでの目的です)

4

2 に答える 2

6

シンプルで、一緒にジャムするだけです:)

return if self.id && Party.find_by_id(self.id).name.downcase == self.name.downcase
于 2012-04-15T16:39:29.573 に答える
1

これらはすべて同等です。

if some_condition
    do_something
end

if some_condition; do_something; end

do_something if some_condition;

some_condition and do_something

しかしもちろん、あなたの例ではすでにこれらのバリアントのうちの 2 つを使用しています :)

于 2012-04-16T05:41:57.397 に答える