Laravel Nova – Manually Send Error Alert From Observer Class












1















I have a Season Resource model with a field named active.



The requirement is to disable deletion for a season with an active status.



I have created an Observer for the season model to watch deleting an event. From this function, I can block the delete in case active is true.



But the issue is with the error message; is there any way to add an error message to session flash from the Observer class?



<?php

public function deleting(Season $season)
{
if($season->active_season)
{
Log::info('Sorry, this season can`t be deleted.
There must be at least one active season.');
}

return false;
}









share|improve this question





























    1















    I have a Season Resource model with a field named active.



    The requirement is to disable deletion for a season with an active status.



    I have created an Observer for the season model to watch deleting an event. From this function, I can block the delete in case active is true.



    But the issue is with the error message; is there any way to add an error message to session flash from the Observer class?



    <?php

    public function deleting(Season $season)
    {
    if($season->active_season)
    {
    Log::info('Sorry, this season can`t be deleted.
    There must be at least one active season.');
    }

    return false;
    }









    share|improve this question



























      1












      1








      1








      I have a Season Resource model with a field named active.



      The requirement is to disable deletion for a season with an active status.



      I have created an Observer for the season model to watch deleting an event. From this function, I can block the delete in case active is true.



      But the issue is with the error message; is there any way to add an error message to session flash from the Observer class?



      <?php

      public function deleting(Season $season)
      {
      if($season->active_season)
      {
      Log::info('Sorry, this season can`t be deleted.
      There must be at least one active season.');
      }

      return false;
      }









      share|improve this question
















      I have a Season Resource model with a field named active.



      The requirement is to disable deletion for a season with an active status.



      I have created an Observer for the season model to watch deleting an event. From this function, I can block the delete in case active is true.



      But the issue is with the error message; is there any way to add an error message to session flash from the Observer class?



      <?php

      public function deleting(Season $season)
      {
      if($season->active_season)
      {
      Log::info('Sorry, this season can`t be deleted.
      There must be at least one active season.');
      }

      return false;
      }






      laravel observers laravel-nova






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 28 '18 at 8:52









      Karl Hill

      3,17622445




      3,17622445










      asked Nov 28 '18 at 8:42









      Vineeth VijayanVineeth Vijayan

      161212




      161212
























          1 Answer
          1






          active

          oldest

          votes


















          1














          I don't know how to flash the error message.



          But since the requirement is to disable deletion for a season with an active status, I'm suggesting to use policy which won't display the delete icon when doesn't match the condition.



          class SeasonPolicy {
          ...

          public function delete(User $user, Season $season) {
          if($season->active_season) {
          return false;
          }
          return true;
          }
          }


          and register the policy in AuthServiceProvider.



          Note:




          Undefined Policy Methods



          If a policy exists but is missing a method for a particular action,
          the user will not be allowed to perform that action. So, if you have
          defined a policy, don't forget to define all of its relevant
          authorization methods.







          share|improve this answer























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53515328%2flaravel-nova-manually-send-error-alert-from-observer-class%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            1














            I don't know how to flash the error message.



            But since the requirement is to disable deletion for a season with an active status, I'm suggesting to use policy which won't display the delete icon when doesn't match the condition.



            class SeasonPolicy {
            ...

            public function delete(User $user, Season $season) {
            if($season->active_season) {
            return false;
            }
            return true;
            }
            }


            and register the policy in AuthServiceProvider.



            Note:




            Undefined Policy Methods



            If a policy exists but is missing a method for a particular action,
            the user will not be allowed to perform that action. So, if you have
            defined a policy, don't forget to define all of its relevant
            authorization methods.







            share|improve this answer




























              1














              I don't know how to flash the error message.



              But since the requirement is to disable deletion for a season with an active status, I'm suggesting to use policy which won't display the delete icon when doesn't match the condition.



              class SeasonPolicy {
              ...

              public function delete(User $user, Season $season) {
              if($season->active_season) {
              return false;
              }
              return true;
              }
              }


              and register the policy in AuthServiceProvider.



              Note:




              Undefined Policy Methods



              If a policy exists but is missing a method for a particular action,
              the user will not be allowed to perform that action. So, if you have
              defined a policy, don't forget to define all of its relevant
              authorization methods.







              share|improve this answer


























                1












                1








                1







                I don't know how to flash the error message.



                But since the requirement is to disable deletion for a season with an active status, I'm suggesting to use policy which won't display the delete icon when doesn't match the condition.



                class SeasonPolicy {
                ...

                public function delete(User $user, Season $season) {
                if($season->active_season) {
                return false;
                }
                return true;
                }
                }


                and register the policy in AuthServiceProvider.



                Note:




                Undefined Policy Methods



                If a policy exists but is missing a method for a particular action,
                the user will not be allowed to perform that action. So, if you have
                defined a policy, don't forget to define all of its relevant
                authorization methods.







                share|improve this answer













                I don't know how to flash the error message.



                But since the requirement is to disable deletion for a season with an active status, I'm suggesting to use policy which won't display the delete icon when doesn't match the condition.



                class SeasonPolicy {
                ...

                public function delete(User $user, Season $season) {
                if($season->active_season) {
                return false;
                }
                return true;
                }
                }


                and register the policy in AuthServiceProvider.



                Note:




                Undefined Policy Methods



                If a policy exists but is missing a method for a particular action,
                the user will not be allowed to perform that action. So, if you have
                defined a policy, don't forget to define all of its relevant
                authorization methods.








                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 28 '18 at 14:31









                Saumini NavaratnamSaumini Navaratnam

                4,90011746




                4,90011746
































                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53515328%2flaravel-nova-manually-send-error-alert-from-observer-class%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    A CLEAN and SIMPLE way to add appendices to Table of Contents and bookmarks

                    Calculate evaluation metrics using cross_val_predict sklearn

                    Insert data from modal to MySQL (multiple modal on website)