Articles of activerecord

Como executar um script específico depois de conectado ao oracle usando rails?

Eu preciso executar um script Oracle após conectar-se ao database oracle usando ActiveRecord. Eu sei que existe os inicializadores, mas estes são executados apenas no início do aplicativo. Eu preciso de um ponto para escrever um código que é executado após cada nova conexão de database ser estabelecida. Isso é necessário para inicializar algumas variables […]

Como associação de carga ansiosa para uma matriz de registros de modelo

Eu tenho uma matriz de registros do modelo Rails. É possível ansioso carregar uma associação para todos esses registros de uma só vez (consulta)? Às vezes eu só tenho uma matriz em vez de um AR :: Scope. E às vezes eu quero escolher dinamicamente o que esperar mais tarde.

Ruby on Rails: como gerar uma sequência ampla de aplicativo?

Estou desenvolvendo em RoR 4, com Oracle, PostGreSQL e MSSQL como bancos de dados de destino. Eu estou construindo uma hierarquia de 4 objects, para o qual eu preciso exibir relacionamentos pai-filho através da mesma consulta qualquer que seja o nível que eu comecei. Não é fácil descobrir, mas a dica é que nenhum dos […]

Como desativar o auto_increment no registro ativo do Rails

É possível criar uma chave primária sem o flag auto_increment no ActiveRecord ? Eu não posso fazer create table :blah, :id => false porque eu quero ter índice de chave primária na coluna. Eu procurei documentação, mas não achei nada útil. É possível criar chave primária sem auto_increment?

Atualizar os atributos nesteds do modelo com chave composta nos rails

Eu tenho um modelo com one_to_many relatioship: class Work < ActiveRecord::Base has_many :work_right_holders accepts_nested_attributes_for :work_right_holders, allow_destroy: true end class WorkRightHolder < ActiveRecord::Base self.primary_keys = :work_id, :right_holder_id, :role belongs_to :work belongs_to :right_holder end Quando tento atualizar um work com atributos nesteds, ele cria novas instâncias de object no relacionamento, em vez de atualizar o existente com […]

Converter consulta SQL em consulta de registro ativo no Rails 4

SELECT * FROM ( SELECT DISTINCT ON (sec) id, sec FROM tasks ORDER BY sec, id DESC ) sub ORDER BY id DESC LIMIT 4; Eu estou querendo saber se a consulta SQL acima pode ser convertida em uma consulta de registro ativo. Por enquanto estou usando o find_by_sql seguinte forma: Task.find_by_sql(“SELECT * FROM ( […]

Rails ActiveRecord Eager Load demora muito tempo

Eu estou usando o carregamento ansioso para juntar duas das minhas tabelas Model1.eager_load(:model2) A tabela Model1 tem cerca de 800 linhas e possui muitas referências a outras tabelas. Sempre que essa linha é chamada, leva cerca de 3 minutos para carregar a exibição que mostra as informações. Em seguida, tentei fazer uma conexão direta com […]

Como consultar todos os registros que não possuem uma associação específica?

Se eu quiser uma lista de todas as lojas que estão abertas no domingo, eu faço Shop.includes(:opening_times).where(“opening_times.day =?”, ‘Sunday’) Existe alguma maneira de obter uma lista de todas as lojas que estão fechadas aos domingos? Ou seja, todas as lojas que não estão associadas a um registro em que a coluna do dia é “domingo”?

Como posso adicionar uma restrição Unique de nível de database a uma coluna em uma tabela no Rails usando o arquivo de migration?

Como posso adicionar restrição exclusiva do nível de database a uma coluna em uma tabela no Rails usando sua migration? Eu pesquisei, mas essa resposta parece envolver o índice, e eu não quero tocar índice porque eu não tenho certeza se ele terá um efeito colateral ruim (porque stackoverflow.com/a/3370333/6359753 tem um comentário dizendo que ele […]

Selecionando qual valor deve ter um ID exclusivo no modelo

Eu tenho dois modelos de negócios e restaurantes Quero exibir as ofertas para cada restaurante. Eu não quero que eles sejam ligados em :restaurant_id , mas quero que eles sejam ligados em :restaurant_name . O que eu não consigo descobrir é como ligá-los em :restaurant_name no controlador restaurant controller def show @restaurant = Restaurant.find(params[:id]) @deals […]