この答えを何日も探していました... Djangoではまったく新しいですが、十分ではありませんが、猛烈に読んでいます...
簡単なデータ入力システムを構築したい。CharField はファイル名を取り、ファイル内の行を選択ボックスに表示して、行を削除できるようにします。残りは送信時に保存されます。
model.py
class Inputmodel(models.Model):
data = models.CharField(max_length=128)
ビュー.py
from forms import InputForm
from proj.models import Inputmodel
def ipdb_input_add(request):
if request.method == 'GET':
form = InputForm(request.GET)
if form.is_valid():
dlist = []
if 'filename' in request.GET and request.GET['filename']:
filename = request.GET['filename']
listp = open(filename, 'r').read
with open(filename, 'rt') as f:
myfile = File(f)
for line in myfile:
dlist.append(line)
myfile.close
for d in dlist:
item = Inputmodel(data=d)
item.save
return render_to_response('base.html', { 'form': form })
フォーム.py
from django import forms
from ip_db.models import Inputmodel
class InputForm(forms.Form):
filename = forms.CharField(max_length=128)
box = forms.MultipleChoiceField(
required=False,
choices=Inputmodel.objects.all().values_list('id', 'ipaddr'),
widget=forms.SelectMultiple(attrs={
'style':'width:200px;height:300px;'
}
))
これは難しい作業ではありませんが、もっと簡単な方法がないのではないかと心配しています。何かアドバイス?
どうもありがとう