Problems with Loading Encrypted Data from Fixtures

Hello everyone,

I would like to use attr_encrypted and to do this, I need to get my fixtures singing that song.

I have this in my fixtures …

encrypted_email: <%= “#{Encryptor.encrypt(:value => ‘my@email.com’, :key => ‘some secret key’)}” %>

YAML obviously doesn’t like the type of characters being produced by Encryptor.encrypt because I’m getting the error …

a YAML error occurred parsing /home/anthony/Development/websites/ruby/GMFT/trunk/test/fixtures/members.yml. Please note that YAML must be consistently indented using spaces. Tabs are not allowed. Please have a look at http://www.yaml.org/faq.html

Does anyone know how I can escape those chars nicely to play with fixtures. Wrapping the output in double quotes hasn’t worked as you can see.

If anyone could help me out here, It’d be much appreciated

Thank you

-ants

Hello everyone,

I would like to use attr_encrypted and to do this, I need to get my fixtures singing that song.

I have this in my fixtures ...

encrypted_email: <%= "#{Encryptor.encrypt(:value => 'my@email.com', :key => 'some secret key')}" %>

Have you tried running that command in irb or Rails c, and pasting the output into your YAML? Might be a useful test step.

Walter

Hello everyone,

I would like to use attr_encrypted and to do this, I need to get my fixtures singing that song.

I have this in my fixtures ...

encrypted_email: <%= "#{Encryptor.encrypt(:value => '...@email.com', :key => 'some secret key')}" %>

YAML obviously doesn't like the type of characters being produced by Encryptor.encrypt because I'm getting the error ....

a YAML error occurred parsing /home/anthony/Development/websites/ruby/GMFT/trunk/test/fixtures/members.ym l. Please note that YAML must be consistently indented using spaces. Tabs are not allowed. Please have a look athttp://www.yaml.org/faq.html

Does anyone know how I can escape those chars nicely to play with fixtures. Wrapping the output in double quotes hasn't worked as you can see.

You haven't actually wrapped the output in double quotes - when erb evaluates your <%= then those quotes on the inside go. '<%= ... %>' might do the trick. You should also escape any ' or \ inside your output.

Fred

Thanks for your replies. I haven’t used ERB for ages and so forgot the syntax.

I think I’m going to have to shelve encrypting the email address as it doesn’t play with Authlogic and I haven’t seen a way of encrypting the email address with Authlogic. I will look into this later, though.

Thanks again for the replies.

-ants