Параметр часть после. отсутствует (.com) - PullRequest
0 голосов
/ 07 июля 2019

Итак, я пытаюсь создать систему чата здесь. Я создал класс MessageThread, который расширяется от ApplicationRecord. Я хочу получить все потоки, связанные с конкретным письмом, и вернуть их в формате json, вот как я это сделал:

def show
    threads = MessageThread.where(thread_owner: params[:id])
     render json: {
        status: 'SUCCESS',
        message: 'Thread list fetched',
        data: threads,
     }, status: :ok
end

Я зарегистрировал params[:id], и это соответствует тому, что я отправил в мой интерфейс React.

Проблема здесь в том, что threads возвращает пустой массив (я могу перевести это, чтобы с этим письмом не было никакой нити).

Теперь сложность заключается в том, что если я выполню это в консоли rails:

threads = MessageThread.where(thread_owner: "testmail@ki.com")

Будет возвращен массив с тремя потоками (все связаны с этой почтой).

Так почему же это работает в консоли rails, а не в моем контроллере rails?

РЕДАКТИРОВАТЬ: Вот мой интерфейс, который обрабатывает запрос:

async requestThread(data) {
        await fetch(`http://localhost:3000//message_threads/${data}`, {
            method: 'GET',
            headers: {
                'Content-Type': 'application/json'
            }
        })
            .then(response => response.json())
            .then(data => {
                console.log(data)
            })
            .catch(e => {
                console.log(e)
            })
    }

    generateJsonData = () => {
        this.requestThread(localStorage.getItem('email'))
    }

РЕДАКТИРОВАТЬ 2: Я только что понял, что мой почтовый добавочный номер пропадает при входе в рельсы. Он приходит как mail@gmail, а не mail@gmail.com

1 Ответ

1 голос
/ 07 июля 2019

Я нашел, как это исправить здесь: Rails - параметры с "точкой" (например, /google.com)

Что происходит, так это то, что rails не получает расширение .com моего письма, в результате получается пустой массив. Это мой маршрут для класса MessageThread:

resources :message_threads, constraints: { id: /[0-z\.]+/ }

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