🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Slim

SlimはPHPアプリケーションを開発するための軽量なマイクロフレームワークです。

Q&A

解決済

1回答

2004閲覧

[ruby]三項演算子の書き方

tomato185

総合スコア29

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Slim

SlimはPHPアプリケーションを開発するための軽量なマイクロフレームワークです。

0グッド

0クリップ

投稿2020/12/18 01:17

###実現したいこと
**下記のコードの一部は適当に変えております。

slim

1- @products.each do |product| 2 - if product[:count] == '5' 3 = link_to '', new_fruit_path(@product[:name], test_id: product[:size]) 4 - else 5 span 6

上で書いたslimでのif-else文を三項演算子で2行にしたいです。

###現在

slim

1- @sizes.each do |size| 2 - product[:count] == '5' ? "#{link_to '', new_fruit_path(@product[:name], test_id: product[:size])}" : "<span></span>" 3

現在の状態だと、<a><span>も何もない状態になってしまいす。

ちなみに、実現したいこと記載したものはきちんと理想通りに動きます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

おそらく2行目の先頭が「-」ではなく「=」にすればよいのかなと思いました。

ちなみに自分だったら以下の様に記述します。(動作未確認)

slim

1- @sizes.each do |size| 2 = product[:count] == '5' ? link_to('任意の文字列いれないと表示されないかも。。。', new_fruit_path(@product[:name], test_id: product[:size])) : tag.span

投稿2020/12/18 07:38

yowa

総合スコア28

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tomato185

2020/12/18 07:44

ありがとうございます! 無事に解決できました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問