Как получить последний вставленный идентификатор и сохранить его в другой таблице, используя Angular и Sequelize? - PullRequest
0 голосов
/ 25 марта 2019

Ситуация такова: у меня есть одна форма отправки с одним полем ввода и четырьмя флажками. У меня есть две таблицы в базе данных. Одна таблица для записей в поле ввода (называемая «причинами») и одна таблица для записей флажков (называемая «reason_to_transaction»). Когда я нажимаю кнопку «Отправить», он проверяет, отмечены ли некоторые флажки и есть ли в поле ввода какой-либо текст, и сохраняет данные из поля ввода и флажки в две разные таблицы. Таблица «причины» имеет два столбца (id, имя). Таблица «reason_to_transaction» имеет два столбца (идентификатор причины, transcation_type). Столбец из таблицы (reason_to_transaction) «transcation_type» сохраняет данные из флажка. В столбце rable (причины) сохраняются данные из поля ввода. Как я могу сохранить данные в таблицу ("reaons_to_transaction") с идентификатором из таблицы "причины". Моя функция сейчас работает, но в "reason_id" сохраняет NULL. Мой код:

Как я могу получить последний идентификатор вставки в одной таблице и сохранить его в другой таблице. Я использую Angular Sequelize.

У меня есть этот код:

<form ng-submit="createReason(reasonsForm1.$valid)" name="reasonsForm1">
    <div class="row">
        <div class="col-sm-12">
            <div class="form-group">
                <label for="database_address">??? ?? ?????????:</label>
                <input type="text" class="form-control" ng-model="reasonname" placeholder="??? ????????? ?? ????????" />
            </div>
            <div class="container">
                <p>???????? ?? ???:</p>

                <ul>
                <li ng-repeat="album in albums">
                <input type="checkbox" ng-model="album.selected" value={{album.name}} /> {{album.name}}
                </li>
                </ul>
               <button type='button' ng-click="save1()">Save</button><br>
              Saved results:<br>
              {{albumNameArray}}

        </div>


        </div>

    </div>
    <button class="btn btn-primary" type="submit">Save</button>
    <button class="btn btn-primary" id="cnlbtn1" type="button">Cancel</button>

     <!--ng-click="createUser()"-->
    <!--<button class="btn btn-primary" ng-disabled="userForm.$invalid" type="submit">???????? ?? ???</button>-->
</form>





$scope.createReason=function()
    {
        $scope.albumNameArray = [];
            angular.forEach($scope.albums, function(album){
            if (album.selected && album.name=="sell")
            {
                defaultAdapter.query('INSERT INTO reason_to_transaction(transaction_type) VALUES("sell") ',

                 {
                     /*replacements: objectToSave1,*/type:Sequelize.QueryTypes.UPDATE
                 })
                $scope.refresh();
            }
            var objectToSave = {
            name: $scope.reasonname,
        };
            defaultAdapter.query('INSERT INTO reasons(name) VALUES(:name)',
              { replacements: objectToSave, type: Sequelize.QueryTypes.UPDATE }
            ).then(projects => {
              console.log(projects);
              $scope.editMode = false;
                $scope.activeItem = false;
                $scope.refresh();
            });
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...