Ir al contenido principal

Rails - Basic Steps III

pValidations

  • Validations are a type of ActiveRecord
  • Validations are defined in our models

Implement Validations

  1. Go to  root_app/app/models
  2. Open files *.rb for each model

Mandatory field

    • validates_presence_of  :field
    • Ex:  validates_presence_of  :title

Classes

  • The basic syntax is
class MyClass
       @global_variable
       
       def my_method
             @method_variable
       end
end

  • Create an instance
    • myInstance = MyClass.new
  • Invoke a mehod
    • mc.my_method
  • class() method returns the type of the object
  • In Ruby, last character of method define the behavior
    • If ends with a question -> return a boolean value
    • If ends with an exclamation -> change the state of the object

Getter / Setter method

def global_variable
      return @global_variable
end
def global_variable=(val)
       @global_variable  = val
end

  • Other way is used the word attr_accessor
    • Ex:    attr_accessor  :global_variable  
    • Ex2:  attr_accessor  :global_variable, :second_variable  
  • If you only want a setter use: attr_write
  • If you only want a getter use: attr_reader

  • return is not necessary, the last line executed is what is returned.
  • Even though return you can use return
  • Class methods are created with the reserved word self after a point (.)
    • To call the method:  MyClass.class_method
class MyClass
       @global_variable
       
       def self.class_method
             @method_variable
       end
end


Inhearence

  • Use the symbol <
    • Ex:   class NewClass < Superclass

Modules

  • Use the word module to create a module with his own namespace
  • To include a module use the word require
    • require'module_X'

Assignments

  • All the assignments are by references not by value
  • Ruby, support parallel assignemt
    • Ex: a, b = b, a 

Variables

  • name - could be a local variable
  • @name - instance variable
  • @@name - class variable  (static variable)
  • $Name - global variable
  • The convention is use underscores for variables
  • The convention is use camel case for classes

Strings

  • All the content between double quotes
  • If you put #{} inside a string, Ruby interprets as code
  • If you use `` the interprets as a command
  • Symbol is when use this symbol
  • A Symbol is used when you don´t want to manipulate the characters

Comentarios

Entradas populares de este blog

Python create package

Create a root folder Create a sub-folder "example_pkg" that contains the funtionallity packaging_tutorial/ example_pkg/ __init__.py In the root folder create the following structure  packaging_tutorial/ example_pkg/ __init__.py tests/ setup.py LICENSE README.md in the setup.py contains the configuration of the packages your package is found by find_packages() import setuptools with open ( "README.md" , "r" ) as fh : long_description = fh . read () setuptools . setup ( name = "example-pkg-YOUR-USERNAME-HERE" , # Replace with your own username version = "0.0.1" , author = "Example Author" , author_email = "author@example.com" , description = "A small example package" , long_description = long_description , long_description_content_type = "text/markdown" , url = "https://github.com/pypa/sam...

Android - Basic Steps (Service)

Service Run in the main thread of the hosting application Android can kill the Service if need the resources Purpose Supporting inter-application method execution Performing background processing Start a Service Call Context.startService(Intent intent)\ To call from a Fragment use getActivity().getApplicationContext().startService( intentService); Executing the service After call startService(...)  In the Service is executed the method onStartCommand(...) If the method returns the constant START_NOT_STICKY then Android will not restart the service automatically if the the process is killedp Foreground To execute the service foreground call the method startForeground() Use this if the user is aware of the process Bind to a Service Call the method Context.bindService( Intent service ServiceConnection con int flags ) Send Toast from the Service On the method onStartCommand receive the message   ...