Skip to content

Commit 31afe1b

Browse files
committed
Stream view handles uploaded images
1 parent 02424eb commit 31afe1b

9 files changed

Lines changed: 146 additions & 7 deletions

File tree

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# -*- coding: utf-8 -*-
2+
from __future__ import unicode_literals
3+
4+
from django.db import models, migrations
5+
6+
7+
class Migration(migrations.Migration):
8+
9+
dependencies = [
10+
('items', '0001_initial'),
11+
]
12+
13+
operations = [
14+
migrations.AddField(
15+
model_name='photoitem',
16+
name='deleted',
17+
field=models.BooleanField(default=False),
18+
preserve_default=True,
19+
),
20+
migrations.AddField(
21+
model_name='tweetitem',
22+
name='deleted',
23+
field=models.BooleanField(default=False),
24+
preserve_default=True,
25+
),
26+
]
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# -*- coding: utf-8 -*-
2+
from __future__ import unicode_literals
3+
4+
from django.db import models, migrations
5+
6+
7+
class Migration(migrations.Migration):
8+
9+
dependencies = [
10+
('items', '0001_initial'),
11+
('stream', '0001_initial'),
12+
]
13+
14+
operations = [
15+
migrations.AddField(
16+
model_name='stream',
17+
name='photo_item',
18+
field=models.OneToOneField(default=None, to='items.PhotoItem'),
19+
preserve_default=True,
20+
),
21+
migrations.AddField(
22+
model_name='stream',
23+
name='tweet_item',
24+
field=models.OneToOneField(default=None, to='items.TweetItem'),
25+
preserve_default=True,
26+
),
27+
]
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# -*- coding: utf-8 -*-
2+
from __future__ import unicode_literals
3+
4+
from django.db import models, migrations
5+
6+
7+
class Migration(migrations.Migration):
8+
9+
dependencies = [
10+
('stream', '0002_auto_20160407_1813'),
11+
]
12+
13+
operations = [
14+
migrations.AlterField(
15+
model_name='stream',
16+
name='photo_item',
17+
field=models.ForeignKey(to='items.PhotoItem'),
18+
preserve_default=True,
19+
),
20+
migrations.AlterField(
21+
model_name='stream',
22+
name='tweet_item',
23+
field=models.ForeignKey(to='items.TweetItem'),
24+
preserve_default=True,
25+
),
26+
]
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# -*- coding: utf-8 -*-
2+
from __future__ import unicode_literals
3+
4+
from django.db import models, migrations
5+
6+
7+
class Migration(migrations.Migration):
8+
9+
dependencies = [
10+
('stream', '0003_auto_20160407_1820'),
11+
]
12+
13+
operations = [
14+
migrations.AlterField(
15+
model_name='stream',
16+
name='photo_item',
17+
field=models.ForeignKey(blank=True, to='items.PhotoItem', null=True),
18+
preserve_default=True,
19+
),
20+
migrations.AlterField(
21+
model_name='stream',
22+
name='tweet_item',
23+
field=models.ForeignKey(blank=True, to='items.TweetItem', null=True),
24+
preserve_default=True,
25+
),
26+
]
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# -*- coding: utf-8 -*-
2+
from __future__ import unicode_literals
3+
4+
from django.db import models, migrations
5+
import django.db.models.deletion
6+
7+
8+
class Migration(migrations.Migration):
9+
10+
dependencies = [
11+
('stream', '0004_auto_20160407_1828'),
12+
]
13+
14+
operations = [
15+
migrations.AlterField(
16+
model_name='stream',
17+
name='photo_item',
18+
field=models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, to='items.PhotoItem', null=True),
19+
preserve_default=True,
20+
),
21+
migrations.AlterField(
22+
model_name='stream',
23+
name='tweet_item',
24+
field=models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, to='items.TweetItem', null=True),
25+
preserve_default=True,
26+
),
27+
]

testsite/stream/templates/stream.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ <h4>Tweet</h4>
1111
{% if stream.type == 'photo' %}
1212
<li>
1313
<h4>Image</h4>
14-
<img src='{{ stream.image.url }}'>
14+
<img src='{{ stream.img_href }}'>
1515
</li>
1616
{% endif %}
1717
{% endfor %}

testsite/stream/views.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from django.shortcuts import get_list_or_404, render
22
from stream.models import Stream
3+
from django.conf import settings
34

45
# Create your views here.
56
def show_stream(request):
@@ -9,14 +10,15 @@ def show_stream(request):
910
print 'stream_data', stream_list
1011

1112
for stream in stream_list:
13+
14+
# handle tweets
1215
if(stream.tweet_item != None and stream.tweet_item.deleted == False):
13-
print stream.tweet_item.text
14-
print stream.tweet_item.deleted
15-
print type(stream.tweet_item)
1616
current_stream.append({'type': 'tweet', 'text': stream.tweet_item.text})
1717

18+
# handle photos
1819
elif(stream.photo_item != None and stream.photo_item.deleted == False):
19-
current_stream.append({'type': 'photo', 'image': stream.photo_item.image})
20+
current_stream.append({'type': 'photo', 'img_href': stream.photo_item.image.url})
2021

22+
# render HTML from template
2123
obj = render(request, './stream.html', {'stream_data': current_stream})
2224
return obj

testsite/testsite/settings.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
# SECURITY WARNING: don't run with debug turned on in production!
2323
DEBUG = True
2424

25+
MEDIA_URL = '/images/'
26+
2527
TEMPLATE_DEBUG = True
2628

2729
ALLOWED_HOSTS = []

testsite/testsite/urls.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
from django.conf.urls import patterns, include, url
22
from django.contrib import admin
3+
from django.conf import settings
4+
from django.conf.urls.static import static
35

46
urlpatterns = patterns('',
57
# Examples:
68
# url(r'^$', 'testsite.views.home', name='home'),
79
# url(r'^blog/', include('blog.urls')),
810

911
url(r'^admin/', include(admin.site.urls)),
10-
url(r'^stream/', 'stream.views.show_stream')
11-
)
12+
url(r'^stream/', 'stream.views.show_stream'),
13+
14+
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

0 commit comments

Comments
 (0)