Как создать форму реагирования baesd на модели ruby ​​на рельсы связанные - PullRequest
0 голосов
/ 17 октября 2018

Я новичок в разработке React и Ruby on Rails, в моем проекте у меня две модели.Первая модель Post.rb и Comment.

Post.rb

class Post < ApplicationRecord
    has_many :comments, dependent: :destroy

    validates :title, presence: true, length: { minimum: 5 }
    validates :content, presence: true, length: { minimum: 140 }
end

Comment.rb

class Comment < ApplicationRecord
  belongs_to :post

  validates :content, presence: true, length: { minimim: 140 }
end

Я хочу создать форму React для вставки комментария и выбора сообщенияДля регистрации в базе данных комментарий связать сообщение.

Следуйте ниже сообщения формы и комментария формы.Я не могу получить сообщение в выпадающем списке в форме Комментарий.

NewPostForm.js

import React from 'react';
import { Form, Segment,Button, Grid } from 'semantic-ui-react';

const NewPostForm = ({onNewPost = f => f}) => {
    let _title, _content 
    const submit = e => {
        e.preventDefault()
        onNewPost(_title.value, _content.value)
        _title.value = ''
        _content.value = ''
        _title.focus()
    }
    return (
        <Grid>
            <Grid.Column width={16}>
                <Segment>
                    <Form onSubmit = { submit }>
                        <Form.Field required>
                            <input ref = { input => _title = input } placeholder="Título..."/>
                        </Form.Field>
                        <Form.Field required>
                            <textarea ref = { textarea => _content =textarea } placeholder="Conteúdo..."/>
                        </Form.Field>
                        <Button primary>Criar Post</Button>
                    </Form>
                </Segment>
            </Grid.Column>
        </Grid>

    )
}

export default NewPostForm;

NewCommentForm.js

import React from 'react';
import { Form, Segment,Button,Grid } from 'semantic-ui-react'

const NewCommentForm = ({onNewComment = f => f}) => {
    let _content, _post_id

    const submit = e => {
        e.preventDefault()
        onNewComment(_content.value, _post_id.value)
        _content.value = ''
        _post_id.value = ''
        _content.focus()
    }
    return (
        <Grid>
            <Grid.Column width={16}>
                <Segment>
                    <Form onSubmit = { submit }>
                        <Form.Field required>
                            <input ref = { input => _content = input } placeholder="Conteúdo..."/>
                        </Form.Field>
                        <Form.Field required>
                            <select ref = { select => _post_id = select } placeholder="Conteúdo..."/>

                        </Form.Field>
                        <Button primary>Criar Comentário</Button>
                    </Form>
                </Segment>
            </Grid.Column>
        </Grid>

    )
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...