小编use*_*989的帖子

只写,只读django rest框架中的字段

我有这样的模特:

class ModelA(models.Model):
    name = models.CharField()


class ModelB(models.Model):
    f1 = models.CharField()
    model_a = models.ForeignKey(ModelA)
Run Code Online (Sandbox Code Playgroud)

串行器:

class ASerializer(serializers.ModelSerializer):
    model_b_ids = serializers.CharField()
    class Meta:
        model = ModelA
        write_only_fields = ('model_b_ids',)
Run Code Online (Sandbox Code Playgroud)

观点:

class AView(CreateModelMixin, GenericViewSet):

    def perform_create(self, serializer): 
        model_b_ids = parse_somehow(serializer.validated_data["model_b_ids"])
        #do something...
Run Code Online (Sandbox Code Playgroud)

我得到的问题是"model_b_ids"

用户应在发送发布数据时提交.

我在perform_create中使用它来链接到相关模型.

但那不是ModelA中的"真正的专栏"所以当我试图保存它时会引发异常.

我尝试从validated_data弹出,然后再次在某处无法从模型中读取model_b_ids的错误.有没有正确使用这种领域的想法?

django django-rest-framework

53
推荐指数
5
解决办法
4万
查看次数

哪个数据库适合我的应用程序mysql或mongodb?使用Node.js,Backbone,Now.js

我想使用frontend:backbone backend:node创建像docs.google.com这样的应用程序(没有api,完全在我自己的服务器上)

您认为哪个数据库更好?mysql还是mongodb?应该支持良好的可扩展性.我熟悉php的mysql,如果答案是mysql,我会很高兴.但是我看到很多教程,他们使用mongodb,为什么他们使用没有mysql的mongodb?我该怎么用?

任何人都可以使用骨干,Node,mysql(或mongo)为我提供一些示例应用程序(使用源代码)构建的链接.或至少应用程序.用Node和mysql

谢谢

mysql mongodb node.js backbone.js

17
推荐指数
3
解决办法
2万
查看次数

Backbone - 对象渲染没有方法'apply'

我收到错误:

对象渲染没有方法适用于下面的代码.

可能是什么原因?除了javascript的链接之外,html页面不包含任何代码.
我该怎么做才能消除错误?

(function($) {

    window.Book = Backbone.Model.extend({});

    window.Library = Backbone.Collection.extend({

        model: Book

    }); // end of Collection
    window.LibraryView = Backbone.View.extend({

        el: $('body'),

        events: {
            'click button#btn_add': 'btn_add'

        },

        initialize: function() {
            $(this.el).append("View initialized");
            _.bindAll(this, 'render', 'btn_add');
            this.collections = new Library();
            this.collections.bind('add', 'render', this);
            this.startingDisplay();

        },
        startingDisplay: function() {
            $(this.el).append("<input type='text' id='t1' /><button id='btn_add'>Add</button>");

        },

        btn_add: function() {

            book = new Book({
                title: "first"
            });
            alert("Name : " + book.get('title'));
            this.collections.add(book);
        },

        render: function() {
            alert("render called");

        },

    }); …
Run Code Online (Sandbox Code Playgroud)

jquery apply backbone.js nomethoderror

7
推荐指数
1
解决办法
6955
查看次数

Nodejs,mongodb - 对象id或_id使用$ nin或$ in

我正在使用Nodejs,mongodb数据库.我们可以用$nin这样的

Model.find({ uname : { $nin : ["sachin","saurav"] } }....
Run Code Online (Sandbox Code Playgroud)

正常元素uname和其他元素的上面的单词.但是对于对象id(_id),..

Model.find({_id : {$nin : ["6534767457dfgbyb23","wtvwt3wy5etvdh"] } } ...
Run Code Online (Sandbox Code Playgroud)

上面的行没有给出错误,它显示正确..

var ObjectID = require('mongodb').ObjectID;
var a = new ObjectID("sdfsdznfsdz");
var b=new ObjectID("sdfjwneufhq2rfwefsd");
Model.find({_id : { $nin : [a,b] } }...
Run Code Online (Sandbox Code Playgroud)

以上也没有给出错误......

问题是,我不能像a,b,c,d那样手动编写...

我必须以某种正确的格式将所有a,b,c,d ......存储在某个变量中,并且必须这样做

Model.find({_id : {$nin : variable } }
Run Code Online (Sandbox Code Playgroud)

要么

Model.find({_id : {$nin : [variable] } }
Run Code Online (Sandbox Code Playgroud)

我试过这个

var string = a+","+b //this didnt work, error : invalid object id …
Run Code Online (Sandbox Code Playgroud)

object mongodb node.js

7
推荐指数
2
解决办法
6924
查看次数

jquery fileuploader - 粘贴时禁用上传 - 'fileuploadpaste' - 如何?

即使我粘贴任何图像(例如在文本输入框上),它也会被jquery文件上传者上传.
那么,如何阻止这个?

在选项页面(https://github.com/blueimp/jQuery-File-Upload/wiki/Options)中,粘贴后触发的事件是'fileuploadpaste'.

文本粘贴后触发的普通jquery事件是'textInput'.

那么,如何禁用此上传?

javascript jquery file-upload

7
推荐指数
1
解决办法
2307
查看次数

rails formtastic - 整数字段,枚举为下拉列表 - "0"无效

我有一个整数字段'fieldname'.

枚举掉落:['a','b']

f.input :fieldname, as: select, collection: Model.drops
Run Code Online (Sandbox Code Playgroud)

选择并提交后,我收到错误'0'不是有效的字段名.

目前通过使用枚举为整数字段编写setter使其工作如下:

def fieldname=(value)
    self[:fieldname] = value.to_i
end
Run Code Online (Sandbox Code Playgroud)

你能告诉我正确的方法吗?我不认为写这个setter方法是一个好方法.

enums ruby-on-rails

6
推荐指数
1
解决办法
4117
查看次数

如何在脚本中运行python脚本,并将脚本动态发送到docker容器?

如何在脚本中运行python脚本,并将脚本动态发送到docker容器?

此外,它应该处理多个同时连接.例如,如果两个人同时执行两次运行,则不应该覆盖另一个人创建的文件.

python docker

6
推荐指数
1
解决办法
2541
查看次数

django - request.META - 发送请求时,如何使数据出现在 request.META 中

在Django中,很多东西都在request.META中,而我当前的代码会检查request.META中的HTTP_TOKEN之类的东西,因此在发送请求时,我需要将请求发送到该url,以便在接收服务器中,数据出现在请求中。元。

我认为标题出现在那里,所以我尝试了这个:

  python example:(I am sending request from javascript, but getting it work from any client is enough so I can implement finally using javascript).
  r = requests.get(url, headers={'HTTP_TOKEN': 'abc'})
Run Code Online (Sandbox Code Playgroud)

但收到请求后,我在 request.META 中没有找到类似 HTTP_TOKEN 的内容。

python django

3
推荐指数
1
解决办法
3166
查看次数

ckeditor 4.5 fileUploadRequest事件未触发

我有一个带有html id"id_textarea"的textarea.

editor = CKEDITOR.inline( 'id_textarea', {
    filebrowserBrowseUrl : 'browse_url',
    filebrowserUploadUrl : 'upload_url'
});

editor.on( 'fileUploadRequest', function( evt ) {
    console.log("This is not printing");
});
Run Code Online (Sandbox Code Playgroud)

每当我尝试上传文件时,它都不会向控制台打印任何内容.难道我做错了什么?

顺便说一句,我的要求是在发送请求之前添加csrf头文件,我需要捕获一些像fileUploadRequest这样的事件.

ckeditor

3
推荐指数
1
解决办法
2015
查看次数