Doesn't this way hit the cache 2x for a hit? I'd think the pattern should be:

```python
def newsletter_field(name):
    key = "newsletter_field|%s" % name
    data = cache.get(key)
    if data is None:
        data = Newsletter.objects.get(slug=name).vendor_id
        cache.set(key, data)
    return data
```

Unless the cache framework works in a way I don't know, this seems more efficient for this case and all below.