Я не вижу никаких синтаксических ошибок, но продолжаю получать ModelForm не указан класс модели

В моем случае я использовал библиотеку выбора файлов , которая вернула путь к внешнему хранилищу, но началась с /root/. И даже с разрешением WRITE_EXTERNAL_STORAGE , предоставленным во время выполнения, я все еще получил ошибку EACCES (Permission denied). Поэтому используйте Environment.getExternalStorageDirectory(), чтобы получить правильный путь к внешнему хранилищу.

Пример: Невозможно записать: /root/storage/emulated/0/newfile.txt Можно написать: /storage/emulated/0/newfile.txt

boolean externalStorageWritable = isExternalStorageWritable();
File file = new File(filePath);
boolean canWrite = file.canWrite();
boolean isFile = file.isFile();
long usableSpace = file.getUsableSpace();

Log.d(TAG, "externalStorageWritable: " + externalStorageWritable);
Log.d(TAG, "filePath: " + filePath);
Log.d(TAG, "canWrite: " + canWrite);
Log.d(TAG, "isFile: " + isFile);
Log.d(TAG, "usableSpace: " + usableSpace);

/* Checks if external storage is available for read and write */
public boolean isExternalStorageWritable() {
    String state = Environment.getExternalStorageState();
    if (Environment.MEDIA_MOUNTED.equals(state)) {
        return true;
    }
    return false;
}

Выход 1:

externalStorageWritable: true
filePath: /root/storage/emulated/0/newfile.txt
isFile: false
usableSpace: 0

Выход 2:

externalStorageWritable: true
filePath: /storage/emulated/0/newfile.txt
isFile: true
usableSpace: 1331007488

0
задан Usian Bolt 27 June 2019 в 18:01
поделиться

1 ответ

Вам нужно использовать заглавные буквы: Meta:

from django.forms import ModelForm    ### Double check your import statement
from django.db import models

...

class PostsForm(ModelForm):           ### Notice that I have changed the inherited class name
    class Meta:                       ### HERE
        model = Posts
        fields = '__all__' 

Я уже пытался изменить мета на Meta

. изменение.

У меня уже есть некоторые объекты в таблице, которые могут быть причиной проблемы?

Нет.

Последнее, что нужно проверить, это убедиться, что ваша модель определена над соответствующей формой.

1
ответ дан JDH 27 June 2019 в 18:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: