I have the same issue. We develop SaaS software and we need to make our apps Multi Tenant with one database for each Tenant. It's a real problem in a real software.
Abraham El viernes, 7 de diciembre de 2012 01:42:44 UTC-3, Jeremy Evans escribió: > > On Thursday, December 6, 2012 7:45:15 PM UTC-8, armanx wrote: > >> I know this is an old threat, but I found this to be the only relevant >> conversation regarding this error. >> >> In my case, I'm loading the models (requiring the model class files) in a >> Sinatra app, at the config.ru bootstrap stage. The actual connection to >> the database is handled from within the app, which is initialized after >> rackup runs though the config.ru file. Thus, the models are loaded prior >> to the db connection. >> >> I came across this when upgrading Sequel from version 3.30.0 to 3.42.0. >> Previously (at least as of 3.30.0), models did not complain about being >> loaded prior to database connection, so why the change now? Any way to >> disable this behavior (other than sticking to older versions of Sequel)? >> > > If it worked at all in earlier versions, it was by accident. You can use > the anonymous class syntax to be able to create Sequel::Model subclasses > without a Database, but considering that model classes without datasets > aren't very useful, you will eventually run into problems. > > In general, you should have a separate file for your model initialization > that is not dependent at all on your web framework, and require that in > config.ru. That way, you can easily access your model code without > needing to load your web code. I usually have a file called models.rb in > my Sinatra apps, so I can do "irb -r ./models and get a irb shell with all > my model code. > > On the other hand, if you must connect to the database inside your app, > why don't you just require your model files inside the app after the > database is created? > > Jeremy > -- You received this message because you are subscribed to the Google Groups "sequel-talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sequel-talk. For more options, visit https://groups.google.com/d/optout.
