Вставьте данные в 2 таблицы с 1 контроллера - PullRequest
0 голосов
/ 01 апреля 2011

у меня scaffold с 2 полями name:string, active:boolean..

Таким образом, леса создают данные ...

def create
    @question = Question.new(params[:question])
    render :json => @question.to_ext_json(:success => @question.save)
  end

Все хорошо, но я хочу, чтобы, когда возникает вопрос, какие-то данные вставлялись в мою другую таблицу под названием токены:

В моей таблице токенов есть только 2 поля: token & is_active (boolean)

def create
    @w = "token"
    @question = Question.new(params[:question])
    @token = Token.new({:token => @w, :is_active=>"1"})
    render :json => @question.to_ext_json(:success => @question.save)
  end

этот способ не работает. Как я могу это сделать?

1 Ответ

0 голосов
/ 01 апреля 2011

Что-то вроде ...

def create
  @w = "token"
  @question = Question.new(params[:question])

  if success = @question.save
    @token = Token.new({:token => @w, :is_active=>"1"})
    @token.save
  end

  render :json => @question.to_ext_json(:success => success)
end

Это предполагает, что любая проверка выполняется на модели Вопроса. Вы можете пойти еще дальше и использовать транзакцию, но в этом случае это кажется слишком сложным.

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