Я знаю, что вы можете попросить ActiveRecord отобразить таблицы в консоли, используя:
ActiveRecord::Base.connection.tables
Есть ли команда, которая перечислила бы столбцы в данной таблице?
Я знаю, что вы можете попросить ActiveRecord отобразить таблицы в консоли, используя:
ActiveRecord::Base.connection.tables
Есть ли команда, которая перечислила бы столбцы в данной таблице?
Это перечислит имена столбцов из таблицы
Model.column_names
e.g. User.column_names
Model.columns
чтобы получить больше информации о столбцах, включая данные конфигурации базы данных.Model.columns
предоставляет всю информацию для таблицы через ActiveRecord. Для меня это был единственный и самый простой способ получить уверенность в том, что на самом деле был мой первичный ключ на уровне базы данных.Он получает столбцы, а не только имена столбцов, и использует ActiveRecord :: Base :: Connection, поэтому никаких моделей не требуется. Удобно для быстрого вывода структуры базы данных.
Пример вывода: http://screencast.com/t/EsNlvJEqM
источник
primary
неправильно устанавливает атрибут (у всех столбцовprimary=nil
). Он установлен правильноModel.columns
методом, предложенным srt32.Используя рельсы три, вы можете просто ввести название модели:
В рельсах четыре вам нужно сначала установить соединение:
источник
Если вы знакомы с командами SQL, вы можете войти в папку своего приложения и запустить
rails db
, что является краткой формойrails dbconsole
. Он войдет в оболочку вашей базы данных, будь то sqlite или mysql.Затем вы можете запросить столбцы таблицы с помощью команды sql, например:
источник
describe your_table;
Вы можете запустить
rails dbconsole
инструмент командной строки, чтобы открыть консоль sqlite. Затем введите, чтобы вывести.tables
список всех таблиц и.fullschema
получить список всех таблиц с именами и типами столбцов.источник
Чтобы получить список столбцов в таблице , я обычно иду с этим:
Model.column_names.sort
.i.e. Orders.column_names.sort
Сортировка названий столбцов позволяет легко найти то, что вы ищете.
Для получения более подробной информации о каждом из столбцов используйте:
Model.columns.map{|column| [column.name, column.sql_type]}.to_h
.Это даст хороший хеш. например:
источник
дополняя эту полезную информацию, например, используя rails console o rails dbconsole:
Студент - моя модель, использующая консоль рельсов:
Другой вариант с использованием SQLite через Rails:
Наконец для получения дополнительной информации.
Надеюсь это поможет!
источник
Для более компактного формата и меньшего набора текста:
источник