Hi All,
I am new to ruby on rails,we are developing a integrated application
which can be accessed by many companies..
We developed application on development environment,recently we switched
to production environment as per client request.The insertion operation
working fine where are the updation not working...
Updation working for sometimes if it is done consecutively then it is not
working,If the server restart it is working again upto some requests..
My Code is
def UpdateToDB
hash = params[:object].to_hash
key = hash[''key'']
if key==nil then # since the
operation is generic
puts " the key not coming thourgh xml"
return nil
end
value = hash[key.to_s]
model = hash[''model'']
record = model.find(:all,:conditions=>["#{key}=?",value])
#
retriving the record from db
updateRecord = model.new(hash[''record'']) # record
with updated
fileds ,consits every filed in the record except the key value,attribute
updateRecord.TimeUpdate = DateTime.now
# Here whatever the other requirements and conversions added to the
updateRecord and also checking the required fields to be non empty etc;
recordHash = Hash.from_xml(updateRecord.to_xml)
root = recordHash.keys
rootElement = root(0)
if record.update_attributes(recordHash[rootElement.to_s]) then
puts record.to_xml
puts "saved successfully"
redirect_to ''index''
end
end
The above method working fine for updation upto some requests
only.. like 8 updates not more than.. for the 9th update the statement
record.to_xml showing the updated value in the server but it is not get
updated in the database..
Can anyone solve my problem and save my day...
Thanks
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---
On 27 Jan 2009, at 06:43, hema gonaboina wrote:> Hi All, > > I am new to ruby on rails,we are developing a integrated > application which can be accessed by many companies.. > > We developed application on development environment,recently we > switched to production environment as per client request.The > insertion operation working fine where are the updation not working... > > Updation working for sometimes if it is done consecutively then > it is not working,If the server restart it is working again upto > some requests.. > > My Code isWhat is this - a controller action or something else ? It seems to be insanely circular - creating a record from parameters so that you can serialize it to xml and then deserialize it to get a hash of attributes - really ?! SOmne of the code doesn''t even look like legal ruby to me Fred> > def UpdateToDB > > hash = params[:object].to_hash > key = hash[''key''] > > if key==nil then # > since the operation is generic > puts " the key not coming thourgh xml" > return nil > end > > value = hash[key.to_s] > > model = hash[''model''] > > record = model.find(:all,:conditions=>["#{key}=?",value]) > # retriving the record from db > > updateRecord = model.new(hash[''record'']) # record with > updated fileds ,consits every filed in the record except the key > value,attribute > > updateRecord.TimeUpdate = DateTime.now > > # Here whatever the other requirements and conversions added > to the updateRecord and also checking the required fields to be non > empty etc; > > recordHash = Hash.from_xml(updateRecord.to_xml) > > root = recordHash.keys > rootElement = root(0) > if record.update_attributes(recordHash[rootElement.to_s]) then > puts record.to_xml > puts "saved successfully" > redirect_to ''index'' > end > > end > > > > The above method working fine for updation upto some > requests only.. like 8 updates not more than.. for the 9th update > the statement record.to_xml showing the updated value in the server > but it is not get updated in the database.. > > Can anyone solve my problem and save my day... > Thanks > > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Hi,
Here Params I given for understading purpose.this is a model code I
am passing the params[:objects] from controller to model through
object @objects.But,if I give that No one understands that @objects is
getting from the veiw so I given params[:objects] in this post.(For
understanding purpose).
the controller action
def genericCURDoperation
companyid = session[:companyid]
obj = MGenericCurdOperation.new(params[:objects],companyid)
result = obj.genericAction
puts result
end
In my MGenericCurdOperation model
class MGenericCurdOperation
attr_accessor :companyid,:objects
def intialize(xml,companyid)
@objects = xml
@companyid = companyid
end
def genericAction
hash = @objects.to_hash
operation = hash[''operation'']
if operation == "insert" then
status = saveToDB(hash[''record''],companyid)
elsif operation == "update" then
status = UpdateToDB(hash[''record''],companyid)
.................
end
return status
end
def saveToDB(record,companyid)
............
end
def UpdateToDB(record,companyid)
hash = record.to_hash
key = hash[''key'']
if key==nil then
puts " the key not coming thourgh xml"
return nil
end
value = hash[key.to_s]
model = hash[''model'']
record = model.find(:all,:conditions=>["#{key}=?",value])
#retriving the record from db
updateRecord = model.new(hash[''record''])
# record with updated fileds ,consits every filed in the record
except the key value,attribute
updateRecord.TimeUpdate = DateTime.now
# Here whatever the other requirements and conversions added
to the
# updateRecord and also checking the required fields to
be non empty etc;
recordHash = Hash.from_xml(updateRecord.to_xml)
root = recordHash.keys
rootElement = root(0)
if record.update_attributes(recordHash[rootElement.to_s]) then
puts record.to_xml
puts "saved successfully"
redirect_to ''index''
end
end
end
this is my code with some more operations also
On Jan 27, 4:08 pm, Frederick Cheung
<frederick.che...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
wrote:> On 27 Jan 2009, at 06:43, hema gonaboina wrote:
>
> > Hi All,
>
> > I am new to ruby on rails,we are developing a integrated
> > application which can be accessed by many companies..
>
> > We developed application on development environment,recently we
> > switched to production environment as per client request.The
> > insertion operation working fine where are the updation not working...
>
> > Updation working for sometimes if it is done consecutively then
> > it is not working,If the server restart it is working again upto
> > some requests..
>
> > My Code is
>
> What is this - a controller action or something else ? It seems to be
> insanely circular - creating a record from parameters so that you can
> serialize it to xml and then deserialize it to get a hash of
> attributes - really ?! SOmne of the code doesn''t even look like
legal
> ruby to me
>
> Fred
>
>
>
> > def UpdateToDB
>
> > hash = params[:object].to_hash
> > key = hash[''key'']
>
> > if key==nil then #
> > since the operation is generic
> > puts " the key not coming thourgh xml"
> > return nil
> > end
>
> > value = hash[key.to_s]
>
> > model = hash[''model'']
>
> > record =
model.find(:all,:conditions=>["#{key}=?",value])
> > # retriving the record from db
>
> > updateRecord = model.new(hash[''record'']) #
record with
> > updated fileds ,consits every filed in the record except the key
> > value,attribute
>
> > updateRecord.TimeUpdate = DateTime.now
>
> > # Here whatever the other requirements and conversions added
> > to the updateRecord and also checking the required fields to be non
> > empty etc;
>
> > recordHash = Hash.from_xml(updateRecord.to_xml)
>
> > root = recordHash.keys
> > rootElement = root(0)
> > if record.update_attributes(recordHash[rootElement.to_s]) then
> > puts record.to_xml
> > puts "saved successfully"
> > redirect_to ''index''
> > end
>
> > end
>
> > The above method working fine for updation upto some
> > requests only.. like 8 updates not more than.. for the 9th update
> > the statement record.to_xml showing the updated value in the server
> > but it is not get updated in the database..
>
> > Can anyone solve my problem and save my day...
> > Thanks
>
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---