How the save(CRUD) operation is performed in the Restful table? I request someone to help me on this one?

 

7 answers

1 accepted

I had overridden the save of the backbone.js and passed the value to the attribute and it worked. Below is the code for that save(as well as for the update) operation.

AJS.RestfulTable.EntryModel = Backbone.Model.extend({
    /**
     * Overrides default save handler to only save (send to server) attributes that have changed.
     * Also provides some default error handling.
     *
     * @override
     * @param attributes
     * @param options
     */
    save: function (attributes, options) {
attributes.projectKey = dataProjectKey;
console.log("console 4:",attributes.projectKey);
        options = options || {};

        var instance = this,
            Model,
            syncModel,
            error = options.error, // we override, so store original
            success = options.success;

        // override error handler to provide some defaults
        options.error = function (model, xhr) {

            var data = $.parseJSON(xhr.responseText || xhr.data);

            instance._serverErrorHandler(xhr);

            // call original error handler
            if (error) {
                error.call(instance, instance, data, xhr);
            }
        };

        // if it is a new model, we don't have to worry about updating only changed attributes because they are all new
        if (this.isNew()) {
            // call super
            Backbone.Model.prototype.save.call(this, attributes, options);

        // only go to server if something has changed
        } else if (attributes) {
            // create temporary model
            Model = Backbone.Model.extend({
                url: this.url()
            });
            console.log("Temporary Model is :",Model);


            syncModel = new Model({
                id: this.id
            });

            options.success = function (model, xhr) {

                // update original model with saved attributes
                instance.clear().set(model.toJSON());

                // call original success handler
                if (success) {
                    success.call(instance, instance, xhr);
                }
            };

            // update temporary model with the changed attributes
            syncModel.save(attributes, options);
        }
    }
});

 

0 vote

You'll need to explain what the Restful table is for most of us.  Although from what I've read (assuming you're using the one google points to) it should handle it automatically.

I think you also need to explain where you are stuck

Hi nic, I am using the one that google points to. Yes it is handling it automatically.

can u help me with this question.https://answers.atlassian.com/questions/38066251

0 vote

Now I'm completely lost. 

You say it's handling it automatically, so there's no problem.  So what is the actual question?

Since it is handling the crud operations automatically, i couldn't find a solution for it. my problem is during save i need to hardcode a value of an column in that table. how to bind the value?

0 vote

Sorry, I'm still lost.  If it's doing the CRUD for you, what's the problem?  If you need to "hard code" a value, then set it in your code, just don't ask the user for it.

 

Ok Nic, Thanks for your Reply, i will find the solution and post it here. Thanks for your time.

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Published Sunday in Agility

You asked for it, so we delivered: images on issues have arrived

A picture tells a thousand words. And agility boards have just released their latest feature: cover images on issues – so now your board can tell a story at first glance. Upload attachmen...

733 views 3 11
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you