Não tocaste no assunto da performance, mas podes pôr também que algo como:

``` ruby
@api_key ||= @user.current_membership.api_key
```

Assim se usásses várias vezes o current_api_key não havia queries desnecessárias. Fazer queries nas views faz com que facilmente  uma view faça dezenas de queries.