タグ付けされた質問 「ruby-on-rails」

Ruby on Railsは、Rubyで記述されたオープンソースのフルスタックWebアプリケーションフレームワークです。これは、人気のあるMVCフレームワークモデルに準拠しており、アプリケーション開発への「構成上の規約」アプローチで知られています。

8
after_saveでレコードが作成または更新されたかどうかを確認する方法
#new_record?関数は、レコードが保存されているかどうかを判断します。ただし、after_saveフックでは常にfalse です。レコードが新しく作成されたレコードであるか、更新から古いレコードであるかを判別する方法はありますか? before_createモデルにフラグを設定したり、データベースに別のクエリを要求したりするなど、別のコールバックを使用しないことを望んでいます。 任意のアドバイスをいただければ幸いです。 編集:それを決定する必要がafter_saveフック、そして私の特定のユースケースのため、ノーがあるupdated_atか、updated_onタイムスタンプ


2
Rails 4でhas_many:through:uniqを使用する際の非推奨警告
Rails 4では、has_many:throughで:uniq => trueを使用すると非推奨の警告が導入されました。例えば: has_many :donors, :through => :donations, :uniq => true 次の警告が表示されます。 DEPRECATION WARNING: The following options in your Goal.has_many :donors declaration are deprecated: :uniq. Please use a scope block instead. For example, the following: has_many :spam_comments, conditions: { spam: true }, class_name: 'Comment' should be rewritten as the …

4
Herokuの問題にアプリをプッシュする
アプリをherokuにプッシュしようとすると、次のメッセージが表示されます。 $ heroku create Creating electric-meadow-15..... done Created http://electric-meadow-15.heroku.com/ | git@heroku.com:electric-meadow-1 5.git $ git push heroku master ! No such app as fierce-fog-63 fatal: The remote end hung up unexpectedly 私がこれを手に入れているのは奇妙です、私は問題なく何度もアプリをherokuにプッシュしました。特に奇妙なのは、fierce-fog-63私がずっと前に作成して削除した古いアプリです。Herokuが存在しないこのアプリにプッシュしようとしているのはなぜですか、特に新しいアプリを作成したときはなぜですか?助言がありますか?

13
Railsの電子メール検証における最新技術とは何ですか?
ユーザーのメールアドレスを検証するために何を使用していますか、そしてその理由は何ですか? 私はvalidates_email_veracity_of実際にMXサーバーを照会するを使用していました。しかし、ネットワークトラフィックと信頼性に関連するさまざまな理由により、それは失敗に満ちています。 私は周りを見回しましたが、多くの人が電子メールアドレスの健全性チェックを実行するために使用していることは明らかでした。これのために維持された、適度に正確なプラグインまたは宝石はありますか? PS:メールが機能するかどうかを確認するためのリンクを記載したメールを送信しないでください。「友達に送る」機能を開発しているので、これは実用的ではありません。

2
Rails Console:リロード!モデルファイルの変更を反映していませんか?考えられる理由は何ですか?
以前は問題なく動作していました。私は少し設定を遊んでいます。知らないうちにいくつかの設定を変更した可能性があります。 ここにenvironment / development.rbの設定があります config.cache_classes = false # Log error messages when you accidentally call methods on nil. config.whiny_nils = true # Show full error reports and disable caching config.consider_all_requests_local = true config.action_view.debug_rjs = true config.action_controller.perform_caching = false # Don't care if the mailer can't send config.action_mailer.raise_delivery_errors = false # …

5
オブジェクトの配列を属性値でフィルタリングするRails
だから私はデータベースにクエリを実行し、オブジェクトの完全な配列を持っています: @attachments = Job.find(1).attachments 今私は、オブジェクトの配列を持っていることを私は別のDBクエリを実行する必要はありませんが、私はに基づいて、配列をフィルタリングしたいAttachmentオブジェクトのfile_type私がのリスト持つことができるようにattachments、ファイルの種類がどこにあるか'logo'との、その後別のリストattachmentsファイルタイプは'image' このようなもの: @logos = @attachments.where("file_type = ?", 'logo') @images = @attachments.where("file_type = ?", 'image') しかし、dbクエリの代わりにメモリ内。

12
Net :: SMTPAuthenticationError(ステージング環境で)Railsアプリからメールを送信するとき
Railsアプリケーションからメールを送信しています。開発環境ではうまく機能しますが、ステージングでは失敗します。次のエラーが発生します。 Net::SMTPAuthenticationError (534-5.7.14 <https://accounts.google.com/ContinueSignIn?plt=AKgnsbtdF0yjrQccTO2D_6) ステージング用のドメイン名がないので注意してください。 これがstaging.rbの私の設定です config.action_mailer.delivery_method = :smtp config.action_mailer.default_url_options = { :host => "my.ip.addr.here:80" } config.action_mailer.smtp_settings = { :address => "smtp.gmail.com", :port => 587, :domain => 'my.ip.addr.here:80' :user_name => "my_email_name@gmail.com", :password => "my_email_password", :authentication => 'login' } 助けてください。 編集。 :tls => trueオプションを追加した後 OpenSSL::SSL::SSLError (Unrecognized SSL message, plaintext connection?) 次に、ポートを25に変更し、これを取得します(30秒の遅延あり)。 …

3
特定のDelayed :: Jobをコンソールで実行するようにするにはどうすればよいですか?
なんらかの理由で、Delayed :: Jobはキューに入れることを決定しましたが、何度か再起動したとしても、何も実行せず、-9で強制終了して再起動しました。ジョブは実行されません。 / consoleで特定のジョブを指定して、それを機能させることはできますか? 例:.. Delayed::Job.find(x).run

6
Rails 3でUTCを現地時間に変換する
Rails 3でUTC TimeまたはTimeWithZone現地時間に変換できません。 セイはmomentいくつかあるTimeUTC(例えば、変数moment = Time.now.utc)。momentDSTを処理して(EST / EDTを使用して)、タイムゾーンに変換するにはどうすればよいですか? より正確には、時刻が今朝の午前9時EDTに対応している場合は「月曜日3月14日9時」、最後の月曜日の午前9時(米国東部標準時)の場合は「月曜日3月7日9時」を印刷します。 うまくいけば、別の方法がありますか? 編集:「EDT」は認識されるタイムゾーンである必要があると最初に考えましたが、「EDT」は実際のタイムゾーンではなく、タイムゾーンの状態に似ています。たとえば、要求しても意味がありませんTime.utc(2011,1,1).in_time_zone("EDT")。「EST」は実際のタイムゾーンであり、夏時間を使用せず、(UTC-5)年間であるいくつかの場所で使用されるため、少し混乱します。

8
レコードがない場合にnilを指定してfind()
私のようなものを使用するときの私の現在のレールプログラムで user = User.find(10) ID = 10のユーザーがいない場合、次のような例外があります。 ActiveRecord::RecordNotFound: Couldn't find User with ID=10 例外を発生させる代わりにnilを取得できますか? unless user = Challenge.find(10) puts "some error msg" end レコードがないときにnilを取得したいだけで、begin / rescueを使用したくない ありがとう

5
Rails 5、#<Devise on line devise_parameter_sanitizer.forの未定義メソッド `for '
Rails 5を使用しています 新しいフィールドusernameをモデルUserに追加しました。 class Users::RegistrationsController &lt; Devise::RegistrationsController before_action :configure_permitted_parameters protected def configure_permitted_parameters devise_parameter_sanitizer.for(:sign_up).push(:username) end end 登録中にエラーが表示されます:#の未定義メソッド「for」フォーク 痕跡: NoMethodError(#の未定義メソッド「for」ですか?フォーク?): app/controllers/users/registrations_controller.rb:7:in `configure_permitted_parameters' Rendering /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-5.0.0.rc1/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erb within rescues/layout Rendering /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-5.0.0.rc1/lib/action_dispatch/middleware/templates/rescues/_source.html.erb Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-5.0.0.rc1/lib/action_dispatch/middleware/templates/rescues/_source.html.erb (5.0ms) Rendering /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-5.0.0.rc1/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-5.0.0.rc1/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (2.9ms) Rendering /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-5.0.0.rc1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-5.0.0.rc1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (1.2ms) Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-5.0.0.rc1/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erb within rescues/layout (118.1ms) 誰が助けることができますか?この問題をどのように解決しますか?


1
レールの2つの列に一意のインデックスを実装する方法
テーブルがあり、2つの列に一意のインデックスを追加しようとしています。これらの列にもインデックスが付けられます。だから私の質問は、1つの列だけのインデックスを削除できるのか、それとも3つのインデックスすべてを使用する必要があるのか​​です。 add_index "subscriptions", ["user_id"] add_index "subscriptions", ["content_id"] add_index "subscriptions", ["user_id"], ["content_id"], :unique =&gt; true

13
Facebookアプリ:localhostがアプリドメインとして機能しなくなった
私はRailsとjQueryを使用してFacebook向けのゲームを作成しています。Facebook JavaScript SDKを使い始めて以来、アプリドメインとしてlocalhostを使用しても問題なく動作するように見えました。ローカルとHerokuの両方でゲームをテストすることができました。 昨日、Facebookの開発者UIが大幅に更新されたようです。localhostをアプリドメインとして追加すると、次のエラーが発生します。 これは、Canvas URL、Secure Canvas URL、Site URL、Mobile Site URL、Page Tab URL、またはSecure Page Tab URLから派生する必要があります。次のドメインを確認して修正してください:localhost 私のゲームもローカルで動作せず、JavaScript SDKがユーザーにログインするとエラーが発生します。 APIエラーコード:191 APIエラーの説明:指定されたURLはアプリケーションによって所有されていませんエラーメッセージ:無効なredirect_uri:指定されたURLはアプリケーション構成で許可されていません。 herokuapp.comは有効なアプリドメインと見なされているため、ゲームをデプロイするときにこれは発生しません。 localhostまたは127.0.0.1を使用できなくなった場合、ゲームを開発してテストするにはどうすればよいですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.