Como personalizar uma chave na resposta json?

Rooby Doo

Relacionamento: A tabela tem muitos usuários.

Estou usando "inclui" para imprimir os detalhes da tabela com os usuários associados como:

Table.includes(:users)

Mas se eu usar condições para usuários, digamos, users.active as:

Table.includes(:users).where( :users => { active: true } )

Estou pegando as tabelas com usuários que estão ativos. Isso funciona bem. Mas se uma tabela não tiver usuário ativo, ela retorna vazia. O que eu precisava era imprimir os detalhes da tabela mesmo que não houvesse nenhum usuário ativo (nesse caso, excluindo a parte do usuário). ou seja, se houver algum usuário ativo, ele deve ser impresso ao longo da tabela, caso contrário, apenas a tabela deve ser impressa. Então, escrevi um método de filtro no modelo como:

has_many :active_users, class_name: "User", :conditions => { active: 'yes'}

E, no controlador: Table.includes(:active_users).

Agora, para a resposta json:

render :json => { :table => @table.as_json(:include => :active_users) }

Portanto, a chave vem como "active_users".

Mas gosto de ter essa chave como "usuários" e estou preso em encontrar soluções. Alguém pode sugerir um sol, por favor.

TIA!

Joey

Substitua o Table#as_jsonpara incluir os usuários

def as_json(opts={})
  super.merge(
    users: active_users.as_json(only: [:id, :username, ...]
  )
end

Eu recomendo colocar os atributos do usuário na lista de permissões para garantir que você não exponha nenhuma informação sensível.

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

Como criar uma chave personalizada na resposta json usando golang

Postman: como validar uma chave na resposta JSON

Como remover uma chave específica na resposta json

Como acessar valores aninhados na resposta JSON como uma matriz

Como analisar uma resposta JSON aninhada múltipla na matriz?

Como personalizar a resposta de @query na API springboot

Cypress: criando um esboço de uma chave específica na resposta JSON

Como criar uma lista de uma chave específica dentro do objeto aninhado da resposta JSON?

Como lidar com Struct tendo uma chave json diferente da resposta json

Como personalizar a conversão JSON do corpo de resposta no Retrofit?

Como personalizar a resposta do objeto JSON no Spring Boot

Como personalizar o bobo "Hello from Twilio!" Resposta por SMS? (enviado quando o destinatário não usa uma palavra-chave conhecida)

Golang como obter uma chave específica (da multistrestrutura) da resposta api json restante

Como eu faria um loop em JSON e, em seguida, classificaria uma resposta pela chave?

Como remover uma chave específica da resposta JSON proveniente do MongoDB no ExpressJS

Como renomear a chave de uma resposta JSON dinamicamente no Retrofit2 Android

Angular 6: como inscrever dados de uma chave de resposta json específica

Como obter o valor da chave "extrair" de uma resposta JSON da Wikipedia

como posso obter a chave e o valor de uma resposta json multidimensional usando php

Resposta: Como especificar uma chave ssh para uma única tarefa?

Como lidar com uma NumberFormatException com Gson na desserialização de uma resposta JSON

Obtendo o valor de uma chave em uma resposta JSON

Como enviar uma resposta na linha _ - java

Como faço para acessar uma propriedade json aninhada na propriedade ['erro'] de outra resposta json?

Como configurar uma tabela angular de material com chave e valores separados em matrizes diferentes em uma resposta json?

Como personalizar a chave filha no Firebase?

Afirmar o nome da chave na resposta json usando groovy

Determinar se a chave aninhada existe na resposta JSON - VBA

Verifique se a chave existe na resposta json multidimensional [Flutter] [Dart]

TOP lista

  1. 1

    R Shiny: use HTML em funções (como textInput, checkboxGroupInput)

  2. 2

    O Chromium e o Firefox exibem as cores de maneira diferente e não sei qual deles está fazendo certo

  3. 3

    Como assinar digitalmente um documento PDF com assinatura e texto visíveis usando Java

  4. 4

    R Folheto. Dados de pontos de grupo em células para resumir muitos pontos de dados

  5. 5

    Gerenciar recurso shake de Windows Aero com barra de título personalizado

  6. 6

    Como obter dados API adequados para o aplicativo angular?

  7. 7

    UITextView não está exibindo texto longo

  8. 8

    Por que meus intervalos de confiança de 95% da minha regressão multivariada estão sendo plotados como uma linha de loess?

  9. 9

    Acessando relatório de campanhas na AdMob usando a API do Adsense

  10. 10

    Usando o plug-in Platform.js do Google

  11. 11

    Como posso modificar esse algoritmo de linha de visada para aceitar raios que passam pelos cantos?

  12. 12

    Dependência circular de diálogo personalizado

  13. 13

    Coloque uma caixa de texto HTML em uma imagem em uma posição fixa para site para desktop e celular

  14. 14

    iOS: como adicionar sombra projetada e sombra de traço no UIView?

  15. 15

    Como usar a caixa de diálogo de seleção de nomes com VBA para enviar e-mail para mais de um destinatário?

  16. 16

    Tabela CSS: barra de rolagem para a primeira coluna e largura automática para a coluna restante

  17. 17

    How to create dynamic navigation menu select from database using Codeigniter?

  18. 18

    Converter valores de linha SQL em colunas

  19. 19

    ChartJS, várias linhas no rótulo do gráfico de barras

  20. 20

    用@StyleableRes注释的getStyledAttributes。禁止警告

  21. 21

    não é possível adicionar dependência para com.google.android.gms.tasks.OnSuccessListener

quentelabel

Arquivo