IT a programování

Ruby on Rails tutorial - 7.3.4 A test for invalid submission

Uvádím zde zádrhel v tutoriálu Ruby on Rails od Michaela Hartla – 7.3.4 A test for invalid submission. Po zadání příkazu get signup_path se objeví chybová hláška.

jitka@rails-tutorial:~/workspace/sample_app (sign-up) $ rails console
Loading development environment (Rails 4.2.0)
>> User.count
   (0.1ms)  SELECT COUNT(*) FROM "users"
=> 0
>> get signup_path
NameError: undefined local variable or method `signup_path' for main:Object
        from (irb):2
...

Vlastně nejde o chybu, protože tento příkaz se měl vykonat nikoli v konzoli irb, ale v souboru test/integration/users_signup_test.rb viz Listing 7.21, ale člověka to zmate, když čte tutoriál.

Ruby on Rails tutorial - Listing 7.8

Uvádím zde opravu příkladu v tutoriálu Ruby on Rails od Michaela Hartla – 7.1.4 A Gravatar image and a sidebar, Listing 7.8.

V tutoriálu je drobná chybička, která na první pohled budí dojem, že chybí příslušná knihovna:

jitka@rails-tutorial:~/workspace/sample_app (sign-up) $ rails console
Loading development environment (Rails 4.2.0)
>> email = "MHARTL@example.COM".
?> Digest::MD5::hexdigest(email.downcase)
NoMethodError: private method `Digest' called for "MHARTL@example.COM":String
        from (irb):2
...

pokračování…

Ruby on Rails tutorial - 6.5 Exercises

Uvádím zde řešení cvičení k tutoriálu Ruby on Rails od Michaela Hartla – kapitola 6.5.

Úloha 3 je vyřešena v rámci (Listing 6.43)

Chybná emailová adresa foo@bar..com se doplní do souboru test/models/user_test.rb mezi testované adresy:

  test "email validation should reject invalid addresses" do
    invalid_addresses = %w[user@example,com user_at_foo.org user.name@example.
                           foo@bar_baz.com foo@bar+baz.com foo@bar..com]
    invalid_addresses.each do |invalid_address|
      @user.email = invalid_address
      assert_not @user.valid?, "#{invalid_address.inspect} should be invalid"
    end
  end

Ruby on Rails tutorial - 5.6 Exercises

Uvádím zde řešení cvičení k tutoriálu Ruby on Rails od Michaela Hartla – kapitola 5.6.

Úloha 1 a 2

Tyto úlohy jsou vyřešeny v rámci Listing 5.36 a Listing 5.37, i když jdou vyřešit i jiným způsobem.

Úloha 3 (Listing 5.38)

Vytvořila jsem si prázdný soubor test/helpers/application_helper_test.rb a do něj nejprve dala chybný kód. Test bundle exec rake test samozřejmě neprošel. Následně jsem do souboru doplnila správný kód:

require 'test_helper'

class ApplicationHelperTest > ActionView::TestCase
  test "full title helper" do
    assert_equal full_title,         "Ruby on Rails Tutorial Sample App"
    assert_equal full_title("Help"), "Help | Ruby on Rails Tutorial Sample App"
  end
end

pokračování…

Ruby on Rails tutorial - 5.1.1 Site navigation

mv: cannot stat ‘rails.png’: No such file or directory

Při zkoušení skvělého tutoriálu k Ruby on Rails od Michaela Hartla v kapitole 5.1.1 Site navigation (Listing 5.2) mi nešel dle návodu nahrát na server Cloud9 obrázek rails.png. Příčinu neznám, jen to vyhodilo tuto hlášku:

jitka@rails-tutorial:~/workspace/sample_app (filling-in-layout) $ curl -O http://rubyonrails.org/images/rails.png
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
jitka@rails-tutorial:~/workspace/sample_app (filling-in-layout) $ mv rails.png app/assets/images/
mv: cannot stat ‘rails.png’: No such file or directory

pokračování…

Ruby on Rails tutorial - 2.5 Exercises

Chybová hláška FILL_IN

Při zkoušení cvičení v Ruby on Rails skvělého tutoriálu od Michaela Hartla v kapitole 2.5 u Listing 2.19 můžete narazit na chybovou hlášku, kterou vygeneruje prohlížeč:

NameError in UsersController#index
uninitialized constant User::FILL_IN

Extracted source (around line #3):
1
2
3
4
5
                
class User < ActiveRecord::Base
  has_many :microposts
  validates FILL_IN, presence: true
  validates FILL_IN, presence: true
end

Rails.root: /home/ubuntu/workspace/toy_app
...

pokračování…

Git - systém na správu verzí

Framework Ruby on Rails používá systém správy verzí Git. K dispozici je knížka v pdf ProGit od Scotta Chacona přeložená do češtiny. Tu samou knížku najdeme zdarma k dispozici na webu git-scm.com. Můžeme postupovat také podle Git User’s Manualu (český překlad: git - uživatelská příručka).

Bitbucket

Jako úložiště projektů používá tutoriál od Michaela Hartla k Ruby on Rails server Bitbucket, který pracuje s Git systémem verzí. Toto úložiště bylo použito hlavně z důvodu, že jde o standardně privátní úložiště, které je zdarma do určitého množství přispěvovatelů. U úložiště GitHub je standardně zdarma pouze veřejné úložiště a soukromé úložiště je zpoplatněno (viz Box 1.4. GitHub and Bitbucket).

pokračování…

Cloud9 a tutoriál k Ruby on Rails

Tutoriál od Michaela Hartla k Ruby on Rails využívá pro vývoj projektů vývojové prostředí Cloud9. Během zkoušení jsem narazila na některé chybové hlášky, které lze jednoduše vyřešit následujícím způsobem.

No application seems to be running here!

Po určité době nečinnosti či po přihlášení po pár dnech, se může objevit tato chybová hláška:

pokračování…

Články na této stránce: