Rails add でエラーが出ないのにデーターベースに追加されない。

つまり、データーが追加されないという事!controller 等は

となっている。これには手をやいた。やっとhttps://qiita.com/sew_sou19/items/04b8c5d6c28f22a5b496、ここの 5. バリデーションによるエラーを解消に回答があった。app/models/blogpost.rb を開き

この様に追記したらエラーが無くなった。この optional: true はbelongs_toの外部キーのnilを許可するというものらしい。この意味が今一つ判らない、blogpostのデーターは全て空ではないが、bloggenre はIDしか入れていないので、このほかは空だからかな?

    カテゴリー: Rails 初心者の犯したエラー | コメントする

    Rails NoMethodError 怪現象

    残念ながら訂正した後なので、エラー画面が無いのですが。

    この画像の選択した部分でエラーが出て行た。エラー内容は
    undefined method ‘update’ for nil:NilClass
    になっていた。このエラーの意味は変数が空だという意味。なので色々と調べてもどう見てもスペル間違いや、インスタンス変数など間違えやすい所も正しい。なので@blogconfig.update の部分を削除し、再度同じ文字を打ち込んで保存したらエラーは出なかった!!
    私の拙い能力では原因がからないが、打ち直した部分に表示されない文字が含まれていたのかなー?

      カテゴリー: Rails 初心者の犯したエラー | コメントする

      Rails 入力枠が複数行表示にならない

      これはエラーが出ないが本来なら左側の表示でないとならないが、右のように1行分しか表示されない。

      app/views/blogposts 開くと
      fieldをarea に直して保存

        カテゴリー: Rails 初心者の犯したエラー | コメントする

        Rails ActionController::UrlGenerationError

        controllerが editで URLを作れないと言っている。上の画像をよく見ると複数形出なければ成らない所が単数形になっている。なので app/views/blogconfigs/edit.html.erb を開いて訂正。

        Railsでは複数形、単数形をはっきり区別して覚えないとこうなる。

          カテゴリー: Rails 初心者の犯したエラー | コメントする

          Rails NoMethodError in Controller#add

          undefined method ‘content’ for と表示が出ている、ジャンルのデーターベースには content なんか無いはず。11行目でエラーが出ているという事は多分 blioggenre_paramsでエラーが出ていると思う。と言う事はデーターベース関係だと見当を付けてその関係をチェック。db/migrateのジャンル関係の CreateBloggenres を調べるが正しい。次はapp/models/bloggenre.rb

          ここに、データーベースには無い content が必須になっている。なのでこれを削除する。何でこうなったかと言うとblogpost.rb をコピーして作成した時にを削除するのを忘れたポカミス。

            カテゴリー: Rails 初心者の犯したエラー | コメントする

            Rails Routing Error


            bloggenres/add へのルートが無いと言っている。よく見るとスペルが違う。なので
            config/routes.rbを開く

            さらに違うRouting Error

            ルートが無いといっているが、本当はundefined method `kayout’ for BlogsController:Class Did you mean? layout _layout が大事。つまりkayout が layout の間違いではないかと言っている。仰る通りです。app/controllers/bllogs_controller を見ると

            黄色で示したようにタイプミス。 layout に訂正してOK。

              カテゴリー: Rails 初心者の犯したエラー | コメントする

              Rails NoMethodError


              これは簡単、addのメソッドが無いと言っているので、app/contrllers/bloggenres_cotorollers.rb を見る

              @bloggenre の b が抜けている

              もう一つ同じ様なエラー

              エラーが出ている所をよく見ると、@blogopost. になっている余分なoがある。これは単にスペルミス
              @blogpost.errors.any? 修正した。

                カテゴリー: Rails 初心者の犯したエラー | コメントする

                Rails AssetNotPrecompiled

                blogposts.html.erbでエラーになっている。blogpostsがコンパイルしていないと言っている。実際はconfig/initializers/assets.rb でエラーが出ている。

                そのファイルが上の画像。赤線の所は複数形で書かないといけない。
                initializers の中なので、再コンパイルが必要。WEBサーバーを止め、
                rails s でサーバーを再起動すると再コンパイルしてくれる。

                  カテゴリー: Rails 初心者の犯したエラー | コメントする

                  Rails Sass::SyntaxError

                  エラー画面
                  エラーが blogconfigs.html.erb の7行目でエラーが出て}無いと言っている。
                  これは実際には app/assets/stylesheetsに作った gray.sccs でエラーが出ている。

                  これがそのファイル。本来は }であるべき処が ] になっているので、}を探して無いのでエラーになった。

                  assetsに作ってあるので、プリコンパイルが必要。なので、ctrl+c でWEBサーバーを止めrails s で再スタートする。

                   

                    カテゴリー: Rails 初心者の犯したエラー | コメントする

                    はじめに Rails ERROR

                    Rails初心者の私が遭遇したエラーを列記していきます。
                    Railsは簡単にプログラムが作れて大変素晴らしいのですが、作者も言っているように「設定よりも規約」ですので色々な規約が存在します。裏を返せば少しでも規約に沿わなければ直ぐにエラーになります。たった一つの記号を忘れても直ぐにエラーになり、また、その際Railsはエラーが何処で起こったか表示をしてくれるのですが、よく、本当にエラーが起こった場所とは違う所を表示したりします。なので、初心者の私が遭遇したエラーを列記することにより、少しでも参考になればと思って、このカテゴリーを作りました。

                      カテゴリー: Rails 初心者の犯したエラー | コメントする