Rails:打印mysql查询

时间:2014-01-20 23:28:44

标签: php mysql ruby-on-rails

我无法弄清楚如何使用Ruby on Rails显示MySql信息。

这是我想要运行的查询

SELECT name,description FROM projects where status> 1

如果有人可以翻译成Rails,那么下面的代码就会非常难以理解

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <title>Proyects</title>

</head>

<?php
$dsn = "mysql:dbname=redmine_default";
$username = "root";
$password = "";

try {
$conn = new PDO( $dsn, $username, $password );
$conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
} catch ( PDOException $e ) {
  echo "Error: " . $e->getMessage();
}

function mostrarProyectos($conn) {
    $sql = 'SELECT * FROM projects';
    foreach ($conn->query($sql) as $row) {
        print $row['name'] . "\t";
        print $row['id'] . "\t";
        print $row['description'] . "\n";
   }
}      


//creating a table with 4 columns
?>
<table border="1" cellspacing=1 cellpadding=2 style="font-size: 8pt"><tr>
<td><font face="verdana"><b>ID</b></font></td>
<td><font face="verdana"><b>Name</b></font></td>
<td><font face="verdana"><b>Status</b></font></td>
<td><font face="verdana"><b>Desc</b></font></td>
</tr>

<?php 
//here comes the SQL query 
  $query = "SELECT name, description FROM projects where status > 1";
  $resultado = $conn->query($query);
  $numero = 0;
  foreach($resultado as $row)
  {
    echo "<tr><td width=\"25%\"><font face=\"verdana\">" . 
   $row["id"] . "</font></td>";
    echo "<td width=\"25%\"><font face=\"verdana\">" . 
    $row["name"] . "</font></td>";
    echo "<td width=\"25%\"><font face=\"verdana\">" . 
    $row["status"] . "</font></td>";
    echo "<td width=\"25%\"><font face=\"verdana\">" . 
    $row["description"]. "</font></td></tr>"; 

    $numero++;
  }
  echo "<tr><td colspan=\"15\"><font face=\"verdana\"><b>N&uacutemero: " . $numero . 
  "</b></font></td></tr>";

  mysql_free_result($result);
  mysql_close($link);
?>
</table
  </body>
</html>

1 个答案:

答案 0 :(得分:0)

RoR代码是这样的:

Project.where("status > ?", 10)

http://guides.rubyonrails.org/active_record_querying.html

该链接将为您提供大量的mysql查询及其RoR对应项。