2017-02-04 4 views
1

Я пытаюсь создать сайт, на котором вы можете публиковать рецепты. Я не уверен, как настроить модели и контроллеры. для моей базы данных я хочу установить его post_title, post_description - одна таблица. post_category другая таблица, а ингредиенты - третья таблица. как настроить его, чтобы при отправке формы он переходил ко всем этим таблицам. (Я больше из парня, который пытается понять, что он делает). Я могу легко сделать это в одной модели, конечно, но как мне отделить ее. от одного до многих отношений, я уверен, но они меня смущают. Я использую sailsjs с mysql. любая помощь будет очень полезна.Попытка сделать сообщение рецепта в sailsjs

Вот моя модель публикации на данный момент.

module.exports = { 

    attributes: { 
    post_title: { 
    type: 'string', 
    required: true 
}, 

post_description: { 
type: 'string', 
    required: true 
}, 

post_category: { 
type: 'string', 
    required: true 
}, 
} 
}; 

и моя форма

<form action="/post/create" method="post" class="register-form" enctype="multipart/form-data"> 
    <label>Title</label> 
    <input name="post_title" style="width: 40em;" class="form-control" type="text"> 
    <label>Description</label> 
    <textarea class="form-control" name="post_description" style="width: 40em; height: 10em"></textarea> 
    <label>Category</label> 
    <select name="post_category" class="form-control" style="width: 40em;"> 
    <option value=""></option> 
    <option value="oven">Oven</option> 
    <option value="no_bake">No Bake</option> 
    <option value="bbq">Bbq</option> 
    <option value="slow_cook">Slow Cooker</option> 
    </select> 
    <label>Ingredient 1</label> 
    <input name="ingredient_1" style="width: 40em;" class="form-control" type="text"> 
    <label>Ingredient 2</label> 
    <input name="ingredient_2" style="width: 40em;" class="form-control" type="text"> 
    <input type="submit" class="btn btn-default " value="Submit Post"> 
</form> 

и мой создать

create: function (req, res, next) { 
    Post.create(req.params.all(), function postCreated(err, post) { 
     if (err) return next(err); 
     res.redirect('/post/show/' + post.id); 
    }); 
    }, 
+0

Никто не собирается идти по ссылке и читать ваш код. Пожалуйста, прочитайте [как спросить.] (Http://stackoverflow.com/help/how-to-ask) – GurV

+0

Ваше право. Мои извинения. Я отредактировал его, чтобы объяснить, что я мог бы –

ответ

0

В контроллере:

  1. Создание Post с помощью параметра, который принадлежит Post т.е. post_title, post_description т.д.
  2. В обратном вызове на Post.create, создать Ingredient

Аналогично для post_category, если он будет храниться в другой модели. Он выглядит частью модели Post в соответствии с вашим кодом.

+0

Решает ли это ваш запрос? Если да, примите. – Sangharsh

Смежные вопросы