The first solution will not work well, because if model.fc_layers is an ordinary python list, then the parameters of its submodules are not listed in model.parameters().
Another solution is to use nn.ModuleList().
self.fc_layers = nn.ModuleList([lay])

self.fc_layers behaves like a python list, but its contents are properly registered with the model.