On Wed, Jan 6, 2010 at 11:25 AM, Jim Barrows <jim.barr...@gmail.com> wrote:
> > > On Wed, Jan 6, 2010 at 12:15 PM, Julian Backes < > julianbac...@googlemail.com> wrote: > >> Thanks for your answer!! >> >> >> You can use mapper by itself. There's a dependency on lift webkit I >>> believe. There might be some other issues, as i don't if anyone is >>> using it that way. >>> >> This is perfectly working >> >> >> As for the number, are you talking about a userId? Why would you think >>> you can't set an arbitrary field in Mapper? >>> >> no, it is not a userId, just think of it as some string. Let's call it >> userSpecialString for the moment. I know that I can set some field but my >> problem is that when *storing a new user in the database*, the system >> should: >> >> 1) start transaction >> 2) generate special number/string from database >> 3) set userSpecialString to this generated thing >> 4) store new user in the database >> 5) end transaction >> > if you do the query in beforeCreate, it will be part of the current transaction... the transactional scope is created by the time beforeCreate is called. > > In this previous question: > http://old.nabble.com/%28Newbie-Question%29-How-to-do-simple-transaction-with-mapper--td26191398.html > > I find the following: > import net.liftweb.*mapper*.{DB, DefaultConnectionIdentifier} > DB.use(DefaultConnectionIdentifier) { conn => > conn.setAutoCommit(false) > ... // CRUDs > if(success) conn.commit > else conn.rollback > conn.setAutoCommit(true) > } > > Have you tried something like this? > > >> Steps 2-4 are no problem. My problem is how to do this in one transaction >> (steps 1 and 5) and where the best place is so that steps 1-5 automatically >> happen when calling newUser.save() >> >> Julian >> >> >>> >>> On Wed, Jan 6, 2010 at 11:11 AM, Julian Backes >>> <julianbac...@googlemail.com <mailto:julianbac...@googlemail.com>> >>> wrote: >>> >>> Does really nobody know something about my problem? Something like >>> "this is not possible at the moment" is also ok... :-) >>> >>> Am 03.01.10 22:46, schrieb Julian Backes: >>> >>> Hi, >>> >>> I have the following problem: >>> For simplicity, assume I want to store users in the database. >>> Before >>> storing a user the first time in the database (using >>> someNewUser.save), >>> I want to create a special unique number for this user (which we >>> need in >>> our company) and store this number together with the new user. >>> This >>> number is based on several values and some of them need to be >>> read from >>> the database. >>> My first idea was to add something to beforeCreate in the meta >>> object >>> but I'm not sure how to do the computation of the number >>> together with >>> the save operation in one transaction (which is absolutely >>> necessary)? >>> And are there better places to do this? >>> I read something about putting the whole request in one >>> transaction but >>> this is not what I want. I'm currently only using the Mapper stuff >>> (because I want a pure scala ORM) and not the whole Lift >>> framework. >>> >>> Thanks in advance, >>> Julian >>> >>> -- >>> >>> You received this message because you are subscribed to the >>> Google Groups "Lift" group. >>> To post to this group, send email to liftweb@googlegroups.com >>> <mailto:liftweb@googlegroups.com>. >>> >>> To unsubscribe from this group, send email to >>> >>> liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com> >>> >>> <mailto:liftweb%2bunsubscr...@googlegroups.com<liftweb%252bunsubscr...@googlegroups.com> >>> >. >>> >>> For more options, visit this group at >>> http://groups.google.com/group/liftweb?hl=en. >>> >>> >>> >>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Lift" group. >>> To post to this group, send email to liftweb@googlegroups.com >>> <mailto:liftweb@googlegroups.com>. >>> >>> To unsubscribe from this group, send email to >>> >>> liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com> >>> >>> <mailto:liftweb%2bunsubscr...@googlegroups.com<liftweb%252bunsubscr...@googlegroups.com> >>> >. >>> >>> For more options, visit this group at >>> http://groups.google.com/group/liftweb?hl=en. >>> >>> >>> >>> >>> >>> >>> -- >>> James A Barrows >>> >>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Lift" group. >>> To post to this group, send email to lift...@googlegroups.com. >>> To unsubscribe from this group, send email to >>> liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com> >>> . >>> For more options, visit this group at >>> http://groups.google.com/group/liftweb?hl=en. >>> >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Lift" group. >> To post to this group, send email to lift...@googlegroups.com. >> To unsubscribe from this group, send email to >> liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com> >> . >> For more options, visit this group at >> http://groups.google.com/group/liftweb?hl=en. >> >> >> >> > > > -- > James A Barrows > > > -- > You received this message because you are subscribed to the Google Groups > "Lift" group. > To post to this group, send email to lift...@googlegroups.com. > To unsubscribe from this group, send email to > liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/liftweb?hl=en. > > -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Surf the harmonics--
You received this message because you are subscribed to the Google Groups "Lift" group.
To post to this group, send email to lift...@googlegroups.com.
To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.