How to connect to fetched datbase and display results

Hi,
I have colleted the data from web page and stored it in the sqlite file now tell me how to use it in rails application and display results should i create any model for it or can be displayed directly in controller and view i had parse with nokogiri to stor in datbase i am newbie to ruby could you hel me how and where to use this database file.

You’ll need a config/database.yml file with the right config e.g.


development:
  adapter: sqlite3
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

A model file in app/models/telephone_record.rb


class TelephoneRecord < ActiveRecord::Base
end

Then within a controller action you can get all the records like so


def index
  @telephone_records = TelephoneRecord.all
end

And render them in your views.

If this isn’t making sense I’d suggest reading through http://guides.rubyonrails.org/getting_started.html which explains all the basics.

thank you mark you have be helping me a lot thank you

should i connect to the databse using the model and what to give inside migrate as this is already created database

If you have that config file setup Rails will connect to the db when you start up the server.

This line is all that is need to fetch all the records from the database.


@telephone_records = TelephoneRecord.all

A migration is only used to change the database schema(add columns, create tables etc.), you don’t need a migration if your database already exists.

i have database file name tel-directory.sqlite and its text file in db folder so i went to config/database.yaml changed it to db/tel-directory.sqlite in development then create a model telephone_record migration will be automatically generated here then i configured controller and its view but i get something like ---- like no records in database i used sqlite manager i get records tough when i go and check tel-directory file.sqlite with 0kb is created what is going wrong i am not getting it.

development:
  adapter: sqlite3
  database: db/tel-directory.sqlite3
  pool: 5
  timeout: 5000

model

class TelephoneRecord &lt; ActiveRecord::Base
  # attr_accessible :title, :body
end

controller
class TelephoneRecordController &lt; ApplicationController
  def index
  	@telephone_records = TelephoneRecord.find_by_sql("SELECT * FROM telephone_records")
  end
end

view
&lt;%= debug(@telephone_records)%&gt;

Try ‘rails c’ in the Terminal and enter this


TelephoneRecord.all

If that doesn’t return your data you know either something in the config or the database is wrong.
That should narrow down the problem.

how to display the exact results by selecting the values in form selectcity and match and print matching phone_no,name and address in table. these is what i have done so far newbie in rails any help would be great…

1.controller

class TelephoneController < ApplicationController
def index
end

def AreaWiseSearch
@telephone_records = TelephoneRecords.find(:all)
end
end

2.created a form with this action index.html.erb

<form name=“form1” method=“post” action=“AreaWiseSearch.aspx?Area=04” id=“form1”>
<table width =“100%” cellpadding=“0” cellspacing=“0” border=“0” align=“center”>
<tr>
<td>

                      &lt;table border="1" style="border-collapse:collapse"  cellpadding="0" cellspacing="2" bordercolor="green" width ="90%"&gt;
                          &lt;tr class="txt2"&gt;
                      &lt;td align="left" colspan="1" style="width: 97px; height: 26px;"&gt;Select City&lt;/td&gt;
                      &lt;td align="left" colspan="4" style=" height: 26px;"&gt;
                         &lt;select name="DropDownList2" id="DropDownList2"&gt;
&lt;option value="BAGBAHARA"&gt;BAGBAHARA&lt;/option&gt;
&lt;option value="BALODABAZAR"&gt;BALODABAZAR&lt;/option&gt;
&lt;option value="BASNA"&gt;BASNA&lt;/option&gt;
&lt;option value="BHATARPARA"&gt;BHATARPARA&lt;/option&gt;
&lt;option value="BILAIGARH"&gt;BILAIGARH&lt;/option&gt;
&lt;option value="DEOBHOG"&gt;DEOBHOG&lt;/option&gt;
&lt;option value="DHAMTARI"&gt;DHAMTARI&lt;/option&gt;
&lt;option value="FIGESHWAR"&gt;FIGESHWAR&lt;/option&gt;
&lt;option value="gariyaband"&gt;gariyaband&lt;/option&gt;
&lt;option value="KASDOL"&gt;KASDOL&lt;/option&gt;
&lt;option value="KURUD"&gt;KURUD&lt;/option&gt;
&lt;option value="MAHASAMUND"&gt;MAHASAMUND&lt;/option&gt;
&lt;option value="MAINPUR"&gt;MAINPUR&lt;/option&gt;
&lt;option value="MANPUR"&gt;MANPUR&lt;/option&gt;
&lt;option value="Nagri"&gt;Nagri&lt;/option&gt;
&lt;option value="NEORA"&gt;NEORA&lt;/option&gt;
&lt;option value="RAIPUR"&gt;RAIPUR&lt;/option&gt;
&lt;option value="SARAIPALI"&gt;SARAIPALI&lt;/option&gt;

</select></td>
</tr>
<tr class=“txt2”>
<td align=“left” colspan=“2” style=“width: 85px;”>Search By</td>
<td align=“left” style=“width: 100px” class=“txt2”>
<input id=“rdbName” type=“radio” name=“Search” value=“rdbName” checked=“checked” /><label for=“rdbName”>Name</label></td>
<td align=“left” style=“width: 100px” class=“txt2”>
<input id=“rdbAddress” type=“radio” name=“Search” value=“rdbAddress” /><label for=“rdbAddress”>Address</label></td>
<td align=“left” style=“width: 125px” class=“txt2”>
<input id=“rdbPhoneNo” type=“radio” name=“Search” value=“rdbPhoneNo” /><label for=“rdbPhoneNo”>Telephone No.</label></td>
</tr>
<tr class=“txt2”>
<td align=“left” colspan=“2” style=“width: 85px;”>Search Key</td>
<td align=“left” colspan=“3” style=“height: 22px”>
<input name=“txtSearch” type=“text” id=“txtSearch” /></td>
</tr>
<tr class=“txt2”>
<td align=“left” colspan=“2” style=“width: 85px;”>Match</td>
<td align=“left” colspan=“3” style=“height: 26px”>
<select name=“drpMatch” id=“drpMatch” style=“width:126px;”>
<option value=“Exactly”>Exactly</option>
<option value=“Starting With”>Starting With</option>

</select></td>
</tr>
<tr>
<td align=“center” colspan=“5” style=“height: 26px”>
<input type=“submit” name=“Button1” value=“Search” id=“Button1” style=“color:FloralWhite;background-color:#804040;font-weight:bold;” /></td>
</tr>
</table>
<br />

                      &lt;table cellpadding="0" cellspacing="0" border="0" width="100%"&gt;
                   &lt;tr&gt;
                      &lt;td align="center" colspan="5" style="height: 26px"&gt;

                      &lt;span id="lblerror" style="color:Red;font-weight:bold;"&gt;&lt;/span&gt;
                      &lt;/td&gt;
                     &lt;/tr&gt;
                 &lt;/table&gt;

                    &lt;/td&gt;
                &lt;/tr&gt;
               &lt;/table&gt;
           &lt;/tr&gt;
        &lt;/table&gt;

3.areawise.html.erb

<html>
<head>
<title></title>
</head>
<body>
<% for telephonerecords in @telephone_records-%>
Phoneno:<%=telephonerecords.phone_no%> - Name:<%=telephonerecords.name%> -Address: <%=telephonerecords.address%></br>
<%end-%>
</body>
</html>

i have a database with tablename telephone records consisting of field select city ,match,phone_no,name,address… i want to create form which uses selectcity and match and textarea with submit button on clicking display phone_no name and address to above selected values can you get me some ideas i am newbie.

Hi,

You’ll find it easier if you work through all of the RailsGuides http://guides.rubyonrails.org/ before trying to solve problems like this.
I read them multiple times when I was starting out, it will give you a solid understanding of all of the major components of Rails.

Forms and responding to different actions are covered in the Getting Started section

The more advanced form helpers are covered here.