Sha256: f7d0ca833e75b398be844941a8e2474dfe41ec23b1e1d8f14f97b6bb626bf784
Contents?: true
Size: 1.93 KB
Versions: 2
Compression:
Stored size: 1.93 KB
Contents
<p align="center"> <img src="https://raw.githubusercontent.com/avinashbot/lazy_lazer/master/logo.png" width="500"> </p> ```ruby require 'lazy_lazer' class User include LazyLazer property :name, :required property :email, default: 'unknown@example.com' property :created_at, from: :creation_time_utc, with: ->(t) { Time.at(t) } property :age, with: :to_i property :twitter_handle, :nil property :favorite_ice_cream def say_flavor! if exists_locally?(:favorite_ice_cream) puts "#{name} currently likes #{favorite_ice_cream}." else puts "#{name} doesn't have a favorite ice cream flavor yet." end end def try_another_flavor! delete_attribute(:favorite_ice_cream) not_fully_loaded! puts "#{name} just tried #{favorite_ice_cream}. They love it!" end private def lazer_reload fully_loaded! # mark model as fully updated { favorite_ice_cream: %w[vanilla strawberry chocolate].sample } end end user = User.new(name: 'Blinky', creation_time_utc: 1500000000, age: '21') user.name #=> "Blinky" user.email #=> "unknown@example.com" user.created_at #=> 2017-07-14 03:40:00 +0100 user.age #=> 21 user.twitter_handle #=> nil user.favorite_ice_cream #=> "chocolate" user.favorite_ice_cream #=> "chocolate" user.reload.favorite_ice_cream #=> "vanilla" user.say_flavor! #=> Blinky currently likes vanilla. user.try_another_flavor! #=> Blinky just tried strawberry. They love it! ``` <p align="center"> <a href="http://www.rubydoc.info/github/avinashbot/lazy_lazer/master">documentation</a> - <a href="https://github.com/avinashbot/lazy_lazer/blob/master/CONTRIBUTING.md">contributing</a> - <a href="https://github.com/avinashbot/lazy_lazer/blob/master/LICENSE.txt">mit licensed</a> <br> created for <a href="https://github.com/avinashbot/redd">redd</a> - logo font is <a href="https://www.behance.net/gallery/3588289/Zaguatica">zaguatica</a> </p>
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
lazy_lazer-0.8.1 | README.md |
lazy_lazer-0.8.0 | README.md |