如何将a的str表示形式(dict如下面的字符串)转换为dict?
s = "{'muffin' : 'lolz', 'foo' : 'kitty'}"
Run Code Online (Sandbox Code Playgroud)
我不喜欢用eval.我还能用什么?
这样做的主要原因是我写的一个同事课程,将所有输入转换为字符串.我没心情去修改他的课程来处理这个问题.
我将字典从我的视图传递给模板.所以{"key1":"value1","key2":"value2"}传入并循环遍历键,值对很好,但是我没有找到一个优雅的解决方案,直接从特定键的视图访问"key1",例如bu json.items ["key1"].我可以使用一些if/then语句,但我宁愿做直接有一种方法吗?
这是html模板中的循环代码:
{% for key, value in json.items %}
<li>{{key}} - {{value}}</li>
{% endfor %}
Run Code Online (Sandbox Code Playgroud) 我正在使用Google App Engine和Django模板.
我有一个表,我想显示对象看起来像:
Object Result:
Items = [item1,item2]
Users = [{name='username',item1=3,item2=4},..]
Run Code Online (Sandbox Code Playgroud)
Django模板是:
<table>
<tr align="center">
<th>user</th>
{% for item in result.items %}
<th>{{item}}</th>
{% endfor %}
</tr>
{% for user in result.users %}
<tr align="center">
<td>{{user.name}}</td>
{% for item in result.items %}
<td>{{ user.item }}</td>
{% endfor %}
</tr>
{% endfor %}
</table>
Run Code Online (Sandbox Code Playgroud)
现在,Django文档指出,当它看到一个.在变量中
它尝试了几个东西来获取数据,其中一个是字典查找,这正是我想要但似乎没有发生......
t=[]
t.append(("a",1))
t.append(("b",2))
t.append(("c",3))
return render_to_response(t.html, context_instance=RequestContext(request, {'t':t}))
Run Code Online (Sandbox Code Playgroud)
如果我想访问访问django模板中的值t而不使用for循环我该怎么办.我尝试了以下它似乎没有工作
alert('{{t[a]}}');
alert('{{t[c]}}');
Run Code Online (Sandbox Code Playgroud) (Django 2.0,Python 3.6,Django Rest Framework 3.8)
我正在尝试填写calendarydays以下模型中的字段:
模型
class Bookings(models.Model):
booked_trainer = models.ForeignKey(TrainerProfile, on_delete=models.CASCADE)
booked_client = models.ForeignKey(ClientProfile, on_delete=models.CASCADE)
trainer_availability_only = models.ForeignKey(Availability, on_delete=models.CASCADE)
calendarydays = models.CharField(max_length=300, blank=True, null=True)
PENDING = 'PENDING'
CONFIRMED = 'CONFIRMED'
CANCELED = 'CANCELED'
STATUS_CHOICES = (
(PENDING, 'Pending'),
(CONFIRMED, 'Confirmed'),
(CANCELED, 'Canceled')
)
booked_status = models.CharField(
max_length = 9,
choices = STATUS_CHOICES,
default = 'Pending'
)
def __str__(self):
return str(self.trainer_availability_only)
Run Code Online (Sandbox Code Playgroud)
现在,我有一个从中获取值trainer_availability_only并将这些值转换为日期时间字符串列表的函数,返回的输出如下所示:
{'calendarydays':['2018-07-23 01:00:00','2018-07-23 02:00:00','2018-07-23 03:00:00','2018-07- 30 01:00:00','2018-07-30 02:00:00','2018-07-30 03:00:00','2018-08-06 01:00:00','2018- 08-06 02:00:00','2018-08-06 03:00:00','2018-08-13 …
在 django 模板中,如果我在上下文字典中有一个键与另一个字典(嵌套字典)相关联,我知道如何遍历它(如何在 django 模板中的字典中遍历字典?)但我需要找到键值。
喜欢 {{ nested_dictionary['key'] }}
但我猜不完全是这样...
可以使用过滤器,但有更好的方法吗?
使用Jinja2如何查找字典中的值,其中键是来自Jinja2for循环的变量.
这是我正在尝试做的一个例子
{% for field in fields %}
<td> {{ item[field] }} </td>
{% endfor %}
Run Code Online (Sandbox Code Playgroud) 请看下面的代码:
{% for row in df_src.iterrows %}
<tr >
<td><input type="checkbox"></td>
{% for col in columns %}
<td class="redrow">{{row.1.col}}</td>
{% endfor %}
</tr>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
这里的{{row.1.col}}wherecol可以是任何值NAME,如PHONE、 等。当我访问它时,就像{{row.1.PHONE}}我在 html 中获取值一样,但是当我访问它时,就像{{row.1.col}}html 中没有显示任何内容。
我有一本这样的字典:
myDict = {key1: item1,
key2: item2}
Run Code Online (Sandbox Code Playgroud)
如果我有这样的嵌套字典,我如何通过在 django 模板中提供key1以及更多内容来获取item1:
myDict2 = {key1: {key11: item11,
key12: item12},
key2: {key21: item21,
key22: item22}}
Run Code Online (Sandbox Code Playgroud)
例如我怎样才能item22使用key22
我知道{{ myDict[key1] }}不起作用
每次尝试访问 Django 模板中的列表时,都会收到此错误。我检查了类似问题的答案,但问题通常是%某处缺少字符或其他字符。据我所知,情况并非如此:
在这里,我传递了一个包含作为键的项目 id 列表和作为每个 id 值的图像 URL 列表的 dict。我知道我应该将它集成到项目模型中,但由于我仍在使用 SQLite3 进行开发,因此无法轻松存储列表。无论如何,我对这个问题很感兴趣。所以:
<a href="{% url 'details_view' item_id=item.id %}"><img class="hover-image" src="{{ img_gallery[item.id][0] }}" alt="">
Exception Value:
Could not parse the remainder: '['item.id'][0]' from 'img_gallery['item.id'][0]'
Run Code Online (Sandbox Code Playgroud)
另外,昨天我尝试使用 bootstrap4 flex-grid 轻松实现 5 列。由于我使用分页来检索 20 个项目,因此我的想法是对每一行的项目(模型)列表进行切片,例如:
{% for item in items[0:5] %}
Run Code Online (Sandbox Code Playgroud)
而且我也收到了同样的错误,即使这是相关答案中推荐的方法,aboput slicing data through a view.
在这两种情况下,我都找不到问题所在,我认为两者都有某种关联。
我正在使用最新的 Django 1.11.6 和 Python 3.5.2。
django ×8
python ×8
dictionary ×1
django-views ×1
html ×1
jinja2 ×1
json ×1
string ×1
templates ×1