Написание приложения с использованием Mongoid 3.1 и Sinatra в Ruby 1.9.3. У меня есть модель под названием Order, которая имеет has_many Items. Всякий раз, когда я пытаюсь добавить элемент к Order.items, я сталкиваюсь с проблемами. У меня есть следующий маршрут, слегка подвешенный:Mongoid has_many relationship вызывает ошибку стойки в стойке в Sinatra
order = session[:user].get_order(Time.now)
order.items << Item.new
order.save
"Hi, mom!" # Garbage page so that I know nothing else is called.
Выполнение этого раз в порядке; это приводит к ошибке:
Warning! Rack::Session::Cookie data size exceeds 4K.
Warning! Rack::Session::Cookie failed to save session. Content dropped.
Я ударил головой о стену, пытаясь заставить ее прекратить это делать. Почему сеанс загружает все мои предметы? Я не использую отношения has_many правильно?
Gah, вы определенно правы. Как только я заменил сеанс [: user] на просто id, я перестаю получать сообщение. Большое спасибо за то, что помогли мне. –
Похоже, что вы запускаете свою собственную аутентификацию. Вы должны взглянуть на [Warden] (https://github.com/hassox/warden/wiki/overview), который является промежуточным ПО Rack для аутентификации. – davogones