Sails- relationship mapping












0















I've 2 sails model



1) student



id - pk
name
revision


2) studentDetails



id
student_id -> fk
student_reviosion


Whenever student gets updated, revision is automatically increment by 1. How I can make sure that revision and student_revision should be sync in both table? Is there any way to define sails_model like that?
I know this can be achieve through lifecycble callback and would like to know if anything that we can directly achieve by defining some relation in sails models itself.










share|improve this question





























    0















    I've 2 sails model



    1) student



    id - pk
    name
    revision


    2) studentDetails



    id
    student_id -> fk
    student_reviosion


    Whenever student gets updated, revision is automatically increment by 1. How I can make sure that revision and student_revision should be sync in both table? Is there any way to define sails_model like that?
    I know this can be achieve through lifecycble callback and would like to know if anything that we can directly achieve by defining some relation in sails models itself.










    share|improve this question



























      0












      0








      0








      I've 2 sails model



      1) student



      id - pk
      name
      revision


      2) studentDetails



      id
      student_id -> fk
      student_reviosion


      Whenever student gets updated, revision is automatically increment by 1. How I can make sure that revision and student_revision should be sync in both table? Is there any way to define sails_model like that?
      I know this can be achieve through lifecycble callback and would like to know if anything that we can directly achieve by defining some relation in sails models itself.










      share|improve this question
















      I've 2 sails model



      1) student



      id - pk
      name
      revision


      2) studentDetails



      id
      student_id -> fk
      student_reviosion


      Whenever student gets updated, revision is automatically increment by 1. How I can make sure that revision and student_revision should be sync in both table? Is there any way to define sails_model like that?
      I know this can be achieve through lifecycble callback and would like to know if anything that we can directly achieve by defining some relation in sails models itself.







      sails.js






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Jan 18 at 16:35







      Jwalin Shah

















      asked Jan 18 at 16:22









      Jwalin ShahJwalin Shah

      1,3651119




      1,3651119
























          1 Answer
          1






          active

          oldest

          votes


















          2














          You should choose just one of these tables to store the data in. Since you are creating a relation, you will be able to access the data when you need it. For example if you keep revision in student, when you look up student details, you can do something like let studentDetails = await StudentDetails.find({id: id}).populate('student') [I am naming the foreign key to 'student' because it will make more sense when you populate it like this].
          Then you can access all the information from the associated student record, like studentDetails.student.revision



          https://sailsjs.com/documentation/concepts/models-and-orm/associations/one-to-one






          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%2f54257828%2fsails-relationship-mapping%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









            2














            You should choose just one of these tables to store the data in. Since you are creating a relation, you will be able to access the data when you need it. For example if you keep revision in student, when you look up student details, you can do something like let studentDetails = await StudentDetails.find({id: id}).populate('student') [I am naming the foreign key to 'student' because it will make more sense when you populate it like this].
            Then you can access all the information from the associated student record, like studentDetails.student.revision



            https://sailsjs.com/documentation/concepts/models-and-orm/associations/one-to-one






            share|improve this answer




























              2














              You should choose just one of these tables to store the data in. Since you are creating a relation, you will be able to access the data when you need it. For example if you keep revision in student, when you look up student details, you can do something like let studentDetails = await StudentDetails.find({id: id}).populate('student') [I am naming the foreign key to 'student' because it will make more sense when you populate it like this].
              Then you can access all the information from the associated student record, like studentDetails.student.revision



              https://sailsjs.com/documentation/concepts/models-and-orm/associations/one-to-one






              share|improve this answer


























                2












                2








                2







                You should choose just one of these tables to store the data in. Since you are creating a relation, you will be able to access the data when you need it. For example if you keep revision in student, when you look up student details, you can do something like let studentDetails = await StudentDetails.find({id: id}).populate('student') [I am naming the foreign key to 'student' because it will make more sense when you populate it like this].
                Then you can access all the information from the associated student record, like studentDetails.student.revision



                https://sailsjs.com/documentation/concepts/models-and-orm/associations/one-to-one






                share|improve this answer













                You should choose just one of these tables to store the data in. Since you are creating a relation, you will be able to access the data when you need it. For example if you keep revision in student, when you look up student details, you can do something like let studentDetails = await StudentDetails.find({id: id}).populate('student') [I am naming the foreign key to 'student' because it will make more sense when you populate it like this].
                Then you can access all the information from the associated student record, like studentDetails.student.revision



                https://sailsjs.com/documentation/concepts/models-and-orm/associations/one-to-one







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Jan 19 at 23:01









                streleckstreleck

                369110




                369110






























                    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%2f54257828%2fsails-relationship-mapping%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

                    Liquibase includeAll doesn't find base path

                    How to use setInterval in EJS file?

                    Petrus Granier-Deferre