Skip to content

Instantly share code, notes, and snippets.

@screamingmunch
Forked from OfTheDelmer/debug_1.md
Last active December 24, 2015 17:09
Show Gist options
  • Save screamingmunch/6833383 to your computer and use it in GitHub Desktop.
Save screamingmunch/6833383 to your computer and use it in GitHub Desktop.
Kristine's Quiz solution (Wk2D5)

#Debugging (Use The Duck… )

Find the errors in the following

1.) link rel="stylesheet"

My script is loading fine, but separate style sheets aren't working

 <!DOCTYPE html>
	
<html>

	<head>
		<script src="/script/script.js"></script>
		<link rel="sytlesheet" type="text/css" href="/style/style.css">
	</head>

2.) type="text/javascript" instead of type="text/script"

My scripts are loading, but they aren't working! How should I fix them? What's wrong?

<!DOCTYPE html>

<html>

<head>
	<script type="text/javascript" src="/script/script_1.js"></script>
	<script type="text/javascript" src="/script/script_2.js"></script>
</head>

3.) ANS: Returns "hello 1" then "hello 2"

If the CLICK ME button is clicked twice what does the console display?

html (the error isn't here)

…

<button id="someId">CLICK ME</button>
… 

JS

…
var count = 0;
function clickAction(){
	count += 1;
	console.log("hello "+ count)
}

document.getElementById("someId").onclick = clickAction()
…

4.)

What's the error?

function countPlusTenSquared(){
	var increment = 10;
	var count = increment++; //+= should be ++ here
	return count*count;
}

5.) action and method was reversed

Why is my form not working?

<form action="/" method="get">
	<input type="text" name="my_name">
	<input type="submit" value="submit name">
</form>

6.) params[:my_number] returns a string, which can't be muliplied, then you need a show.erb file in your views folder so your route could work

My double route isn't working! Why isn't the route working?

…
get "/double/:my_number" do
	
  input = params[:my_number]
  @double = 2*input.to_i
 
 erb :show
  
end

What does get "/double/2" return?

#=> with the modified code, it now returns 4


7.)

My greet route isn't working! What should I change?

app.rb

get "/greet/:name" do
	
	@submitted_name = params[:name]
	
	erb :show
end

show.erb

<div>
	 Hello <%= @submitted_name %>!     #=> varialbes across different files need to be instance variables
</div>

When I go to /greet/world expecting Hello World!, but I get the following error:

 NameError at `/greet/world`
undefined local variable or method `id' for
 #<Sinatra::Application:0x007f892315d160>
 
 BACKTRACE
 ____________________________________________
 2.		<%= submitted_name %>

8.)

Is this RESTful?

I have a site http://somelist.com that stores peoples names in a list.

I made the following routes

GET '/name/new'			# for showing a new form

GET '/name/create'		# for submiting a 'new' name form,
						# and creating
						
GET '/name/:id/delete'	# for submitting a deleting for a name

GET '/name/:id/edit			# for showing a new edit form

GET '/name/:id/edit/post'	# for submitting an edit
							# from a form

Please give a little explanation.

#=> It should be as follows:

GET '/name/new' # for showing a new form

POST '/name/create' # for submiting a 'new' name form,and creating

DELETE '/name/:id/delete' # for submitting & deleting for a name

GET '/name/:id/edit # for showing a new edit form

POST '/name/:id/edit/post' # for submitting an edit from a form


9.)

What do you think of my controller? I don't even need a view. Why shouldn't I put all this in my controller?

get "/" do
	pageTitle = "myApp!"
	"<!DOCTYPE html>
	<html>
		<head>
				<title>#{pagetitle}</title>
		</head>
		<body>
				<div>
					Hello there!
				</div>
		</body>
	</html>"
end

You'll want to break out your page layout into a layout.erb file so your controller is kept to just handing routes and specific functions. That way, you can reuse that route if needed, to keep your code RESTFUL

app.rb
get "/" do
	@pageTitle = "myApp!"
end

layout.erb
<!DOCTYPE html>
<html>
<head>
		<title><%=@pageTitle%></title>
</head>
<body>
		<div>
			Hello there!
		</div>
</body>
</html>

10.)

Look at my view! This works, but why should I be doing things this way?

app.rb

get '/person/:name` do
	erb :show
end		

show.erb

	<div>
		<% person = params[:name] %>
	
		Hello <%= person %>
	</div>

#=> I wouldn't. I would modify it to be:

app.rb

get '/person/:name` do
	@person = params[:name]
	erb :show
end		

show.erb

	<div>
	
		Hello <%= @person %>
	</div>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment