問題タブ [attr-accessor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - Ruby で属性セッターとして文字列を使用して属性を動的に割り当てる
名前と値のペアのハッシュがあります。
これらの値のそれぞれを循環させて、次のようにオブジェクトに割り当てたいと思います。
もちろん、問題は attr1 と attr2 が文字列であることです..だから私は次のようなことはできませんthing."attr1"
私はやってみました:
thing.send(k,v)
しかし、それはうまくいきません
ruby-on-rails - attr_accessor のセッター部分が Rails コントローラーで動作していないようです
私はAPIコントローラーを開発しています。当然のことながら、応答がクライアントに送信される前に、データの「グルーミング」を行います。この目的のために、私はいくつかの特殊なプライベート メソッドを用意しています。「resp」というコントローラーにインスタンス変数を設定し (「response」は Rails の予約語のようです)、これらのメソッドで応答をやり取りするのではなく、直接変更できるようにしたいと考えています。だから私は宣言します
次のようにエンドポイントの1つに設定します
resp がこのように設定されておらず、最終的に nil になるため、これによりエラーが発生します。インスタンス変数を直接設定すると
「取得」できますが、セッターは何も設定していません。私は何が欠けていますか?
前もって感謝します。
ruby - ローカル変数、インスタンス変数、およびシンボル間の混乱
「この章でシンボルを使用したのはこれが初めてです。説明したように、シンボルは名前を参照する便利な方法にすぎません。このコードでは、:isbn は名前 isbn を意味し、プレーンな isbn は変数の値を意味すると考えることができます。この例では、アクセサ メソッドに isbn および price という名前を付けました。対応するインスタンス変数は @isbn と @price です。」</p>
質問:ローカル変数にはインスタンス変数が割り当てられているため、initialize メソッドが返されたときに消えないようになっていることを理解しています。しかし、なぜ attr_accessor でシンボルを使用する必要があるのでしょうか? 代わりに通常の変数だけが必要な場合はどうすればよいですか? attr_accessor の :isbn と :price のコロンを削除すると、機能しなくなることに気付きました。
ruby - クラスから ruby の optparse にアクセスする
私はルビーにかなり慣れていません。optparse を使用して、コードの実行方法に影響を与えようとしています。optparse から結果をクラスに取得して、それに基づいていくつかの条件を設定できるようにしたいと考えています。
私はかなりの数時間をグーグル (optparse、attr_accessor) に費やし、一種の試行錯誤の方法で、できる限りの結果を実装しました。
以下に、最小限の実例を示してみました。構文またはプレゼンテーションのいずれかがオフになっている場合は申し訳ありません...
問題は、 @options がクラス内で nil であることです。これにより、NoMethodError が発生します。
しかし、私はそれを回避する方法がわかりません。
ruby - attr_accessor によって作成される Ruby メソッド名の変数
attr_accessor を使用しているオブジェクトがあります。で変数を使用して、そのオブジェクトのメソッドを呼び出せるようにしたいと考えています#send
。私の問題は、この=
方法が機能していないように見えることです。