AngularJs привязывает атрибут модели к флажку

Я пытаюсь назначить некоторые теги при создании поста. У меня есть модель Post, которая выглядит следующим образом:

var mongoose = require('mongoose');

var PostsSchema = {
    title: String,
    content: String,
    postedBy: {
        type: mongoose.Schema.Types.ObjectId,
        ref: 'Users'
    },
    comments: [{
        text: String,
        postedBy: {
            type: mongoose.Schema.Types.ObjectId,
            ref: 'Users'
        },

    }],

    tags: [String]

};

Я пытаюсь привязать некоторые флажки к атрибуту массива 'tags' в Посте.

Вот как выглядит мой почтовый роутер:

///* Create post */
postRouter.route('/').post(function (req, res) {

        mongoose.createConnection('localhost', 'CMS');
        console.log(req.body);

        var post = {
            title: req.body.title,
            content: req.body.content,
            tags: req.body.tags

        };

        if (typeof req.body.title === "undefined" || typeof req.body.content === "undefined")
        {
            res.json({message:"Error"});
        }else
        {
        var newPost = new Posts(post);
        newPost.save(function (err, post) {
            if (err) res.json({message:"Error"});
            res.json(post);
        });
        }

});

Мой контроллер выглядит так:

$scope.createPost = function(post){
        postService.createPost(post);
        postService.getPosts()
            .then(modelPosts);
    }

И мой взгляд выглядит так:

div(ng-controller='postController') 
h2 Create Post
                    form
                        div.form-group
                            label(for='title') Title
                                input(type='text', class='form-control', id='title', name='title', placeholder='Title', ng-model='newpost.title', autofocus)
                        div.form-group
                            label(for='password') Content
                                input(type='text', class='form-control', id='content', name='content', placeholder='content', ng-model='newpost.content')
                    div(ng-controller='tagController')
                        h2 Tags
                        div( ng-model='Tags', ng-init='getTags()')
                            ul( ng-repeat='tag in Tags')
                                li
                                    label
                                        input(ng-model='newpost.tag',value='{{tag.name}}', type='checkbox', name='tag[]')
                                        span {{tag.name}}
                    button( ng-click='createPost(newpost)', class='btn btn-small btn-primary') Create Post

Я не уверен, в чем проблема с привязкой моего взгляда к модели. Теги отображаются и флажки создаются, но когда я отмечаю один флажок, все они проверяются.

1 ответ

input(ng-model='newpost.tag', ng-value-true='tag.name', ng-value-false='null' type='checkbox', name='tag[]')

Ввод документов [флажок]

Другие вопросы по тегам