Rails has wonderful inbuilt caching methods. This is how i implemented caching for a particular action.
Requirement : Cache a page for 12 hours. After 12 hrs Caching must expire.
before_filter :clear_cache
caches_action :index, :layout => false
def index
#code
# Write expiry time to cache (12 hours)
Rails.cache.write('expiry_time', Time.now + 12.hours)
end
def clear_cache
#Fetch time from cache and check with current time
t = Rails.cache.fetch('expiry_time') || Time.now
t = Time.parse(t) if t.is_a?(String)
# Expire action if current time > Cached time
expire_action :action => :index if Time.now > t
end
Thanks!
Srikanth Jeeva's Ruby Blog
my blog is abt wht i have learnt in RoR.. hope this share a little bit of info & adds a bit stuff., Thanks.
Saturday, December 3, 2011
Tuesday, November 8, 2011
Roles implemented with easy_roles plugin
Plugin git repo : https://github.com/platform45/easy_roles
Step 1 : Install Plugin
Step 2 : Generate migration to create column called roles in user's table
script/plugin install git://github.com/platform45/easy_roles.git
Step 2 : Generate migration to create column called roles in user's table
rails g easy_roles user roles
Step 3 : Run. rake db:migrate to run the migration
Step 4 : Add this line to the user's model
class User < ActiveRecord::Base
easy_roles :roles
end
@user = User.first
@user.add_role 'admin'
@user.is_admin?
=> true
@user.has_role? 'admin'
=> true
@user.is_awesome?
=> false
@user.add_role 'awesome'
@user.is_awesome?
=> true
@user.remove_role 'admin'
@user.is_admin?
=> false
Thursday, October 27, 2011
How to fix Unrecognized command line argument: 'package'
>> rvm package install zlib
ERROR: Unrecognized command line argument: 'package' ( see: 'rvm usage' )
The keyword 'package' is renamed to 'pkg'
Try,
>> rvm pkg install zlib
Njjoy :)
ERROR: Unrecognized command line argument: 'package' ( see: 'rvm usage' )
The keyword 'package' is renamed to 'pkg'
Try,
>> rvm pkg install zlib
Njjoy :)
Tuesday, August 23, 2011
How to fix 'make' is not recognized as an internal or external command
Hi,
I have got this below error.
$ gem install rhodes-3.1.0.gem -l
Building native extensions. This could take a while...
ERROR: Error installing rhodes-3.1.0.gem:
ERROR: Failed to build gem native extension.
c:/InstantRhodes/ruby/bin/ruby.exe extconf.rb
make
'make' is not recognized as an internal or external command,
operable program or batch file.
Gem files will remain installed in c:/InstantRhodes/ruby/lib/ruby/gems/1.8/gems/
rhodes-3.1.0 for inspection.
Results logged to c:/InstantRhodes/ruby/lib/ruby/gems/1.8/gems/rhodes-3.1.0/ext/
gem_make.out
Here is the Fix:
install Devkit for windows by following the steps,
https://github.com/oneclick/rubyinstaller/wiki/development-kit
--
Srikanth
Thursday, August 18, 2011
Rhodes + Blackberry + Fixing error + No such file or directory Simulator
Hi,
I have got this error No such file or directory 'Simulator'
ltadmin@LT008029 ~/projects/SocialTango_Mobile (master)
$ rake run:bb
rake/rdoctask is deprecated. Use rdoc/task instead (in RDoc 2.4.2+)
$use_sqlite : false
rake aborted!
No such file or directory - C:/bb/5.0.0.621_9650/simulator
This is how to Fix this,
Fix 1. Check if you have installed the Blackberry JDE. If you have installed Blackberry JDE there will be a simulator folder and MDS folder inside the installed directory. (In case if you have not installed JDE, here is where you need to download http://us.blackberry.com/developers/javaappdev/javadevenv.jsp)
Fix 2. If you have installed JDE and got the error. Go to Rhodes installation path and find the rhobuild.yml. In my system the path is,
C:\InstantRhodes\ruby\lib\ruby\gems\1.8\gems\rhodes-3.0.2\rhobuild.yml
check if this paths are correct in rhobuild.yml:
6.0:
jde: C:/Program Files/Research In Motion/BlackBerry JDE 6.0
mds: C:/Program Files/Research In Motion/BlackBerry JDE 6.0/MDS
sim: 9800
jde: C:/Program Files/Research In Motion/BlackBerry JDE 6.0
mds: C:/Program Files/Research In Motion/BlackBerry JDE 6.0/MDS
sim: 9800
Installing Rhodes, Running app in Blackberry Simulator in windows
1. Download the Instant Rhodes installer from http://docs.rhomobile.com/rhodes/install#install-on-windows and install it. This will install Ruby, Rhodes.
2. Download the Blackberry JDE from http://us.blackberry.com/developers/javaappdev/javadevenv.jsp
Note : For this you will need to create account and login to the blackberry website.
3. Create a sample rhodes app.
rhodes app myspace4. Go to build.yml in the app, and change the version for blackberry,.
bbver: 6.0
5. do 'rhodes-setup' for adding Java path
$ rhodes-setup
We will ask you a few questions below about your dev environment.
JDK path (required) (C:/Program Files/Java/jdk1.6.0_21): C:/Program Files/Java/j
dk1.6.0_21
We will ask you a few questions below about your dev environment.
JDK path (required) (C:/Program Files/Java/jdk1.6.0_21): C:/Program Files/Java/j
dk1.6.0_21
for other paths just skip.
6. Go to Rhodes installation path and find the rhobuild.yml. In my system the path is,
C:\InstantRhodes\ruby\lib\ruby\gems\1.8\gems\rhodes-3.0.2\rhobuild.yml
add this lines in rhobuild.yml for blackberry version 6.0
6.0:
jde: C:/Program Files/Research In Motion/BlackBerry JDE 6.0
mds: C:/Program Files/Research In Motion/BlackBerry JDE 6.0/MDS
sim: 9800
jde: C:/Program Files/Research In Motion/BlackBerry JDE 6.0
mds: C:/Program Files/Research In Motion/BlackBerry JDE 6.0/MDS
sim: 9800
7. Run the app., rake run:bb
This opens blackberry simulator. Now find your app in the apps menu.
Cheers!
Tuesday, August 16, 2011
Rhodes + Setup Android in windows + problems
Error 1 :
invalid command-line parameter: Files\Android\android-sdk\tools/emulator-arm.exe.
Hint: use '@foo' to launch a virtual device named 'foo'.
please use -help for more information
Fix:
This problem is when you install Rhodes in the path "c:/Program Files/Android/android-sdk" as there is a space in the word "Program Files". Try reinstalling to path "c:/Android/android-sdk"
Error 2 :
sh.exe": /c/InstantRhodes/ruby/bin/rake: C:/RhoSync/ruby/bin/ruby.exe^M: bad interpreter: No such file or directory
Fix : reinstall the rake gem.
1. gem uninstall rake
2. gem install rake
This will update the rake Gem
Error 3 : Cannot find your Rhodes gem or source path.
$ set-rhodes-sdk
invalid command-line parameter: Files\Android\android-sdk\tools/emulator-arm.exe.
Hint: use '@foo' to launch a virtual device named 'foo'.
please use -help for more information
Fix:
This problem is when you install Rhodes in the path "c:/Program Files/Android/android-sdk" as there is a space in the word "Program Files". Try reinstalling to path "c:/Android/android-sdk"
Error 2 :
sh.exe": /c/InstantRhodes/ruby/bin/rake: C:/RhoSync/ruby/bin/ruby.exe^M: bad interpreter: No such file or directory
Fix : reinstall the rake gem.
1. gem uninstall rake
2. gem install rake
This will update the rake Gem
Error 3 : Cannot find your Rhodes gem or source path.
Fix : run this in terminal. this will set up the rhodes path
$ set-rhodes-sdk
c:/InstantRhodes/ruby/lib/ruby/gems/1.8/gems/rhodes-3.0.2/bin
Labels:
error in rhodes setup
Subscribe to:
Posts (Atom)