Pergunta

Eu tenho este modelo

class Vacancy(models.Model):
    user = models.ForeignKey(User, null=True, blank=True, default = None)
    name = models.CharField(max_length=64)

Quando em administração tento que serve para criar uma vaga sem um usuário. E ele lança um erro "club_vacancy.user_id pode não ser NULL". Estou fazendo algo errado?

Foi útil?

Solução

club_vacancy.user_id may not be NULL

parece muito com um erro do seu banco de dados, ao invés de Django.

Parece mais provável que você adicionou null=True após a execução manage.py syncdb. Você precisará modificar seu esquema de banco de dados para permitir valores nulos na coluna.

Outras dicas

Além de Sul, outra opção é usar o Django evolução para as mudanças de esquema.

http://code.google.com/p/django-evolution/

Instale-o antes de fazer alterações db. Em seguida, execute

python manage.py evolve --hint --execute

Certifique-se de que se você adicionar um novo campo, você permite nulos (null=True) ou então evoluir lhe dará uma mensagem de erro.

você precisa redefinir você banco de dados tabela (desde apenas syncdb não atualiza campos que são alredy criados com nulo = false)

./ redefinição manage.py your_app

ou se há alguns dados que você não quer comandos usar o SQL soltas para remover NÃO bandeira NULL

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top